<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Popfizz Computer Science on Medium]]></title>
        <description><![CDATA[Stories by Popfizz Computer Science on Medium]]></description>
        <link>https://medium.com/@popfizz?source=rss-d478a4d9f88b------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*hz8WJBNg8ZXdQ1XNlrKD1w.png</url>
            <title>Stories by Popfizz Computer Science on Medium</title>
            <link>https://medium.com/@popfizz?source=rss-d478a4d9f88b------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 09:13:36 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@popfizz/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Transitioning to Online Learning with Popfizz]]></title>
            <link>https://medium.com/popfizzcs/transitioning-to-online-learning-with-popfizz-52c84867d00?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/52c84867d00</guid>
            <category><![CDATA[homeschooling]]></category>
            <category><![CDATA[k12]]></category>
            <category><![CDATA[education]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Tue, 17 Mar 2020 22:04:39 GMT</pubDate>
            <atom:updated>2020-03-20T16:23:26.617Z</atom:updated>
            <content:encoded><![CDATA[<h3>Transitioning to Online Learning with Popfizz Computer Science</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ofF-ADyJEr5r7hcN1UcgJg.jpeg" /></figure><p>During this transitional period to online learning, Popfizz Computer Science will offer educators free CS courses for their students. We have also launched a new webinar series to help prepare students and teacher for the upcoming AP CS Exams in May. Below are a few ways we want to help you transition your CS teaching and learning experiences online with ease.</p><h3><strong>Get Full Access to Online Courses:</strong></h3><ul><li>Available until July 1, 2020, full access to our online courses are available by completing this form: <a href="https://forms.gle/s2tWAciD3eB7mnyR9">https://forms.gle/s2tWAciD3eB7mnyR9</a></li></ul><h3><strong>Free Webinar Series:</strong></h3><p>The following three webinars are hands-on problem-solving sessions that dive right into the core of some of the most challenging AP CS concepts. We’ll examine recursion, inheritance and polymorphism, and base conversations, while providing teaching tips that you can use in your classroom the very next day. Make sure to have a pen and paper ready as we tackle these challenges together! Students are invited to attend. <em>Seats are limited</em>.</p><ul><li><strong>Tackling AP CSA Recursion:</strong> <em>Tuesday, 3/24, 4:00 PM EST. </em>Recursion is one of the most challenging topics for both students and teachers. In this webinar, we’ll learn to trace recursion code by going through 5 exemplary recursion questions.<strong> </strong><a href="https://zoom.us/webinar/register/WN_LTq5M7lUTlupUUlbo_ZORA"><strong>REGISTER</strong></a><strong>.</strong></li><li><strong>Tackling AP CSA Inheritance and Polymorphism</strong>: <em>Tuesday, 3/31, 4:00 PM EST. </em>Inheritance and polymorphism are at the core of object-oriented programming. However, understanding and using this concept is not easy as it requires abstract thinking at a higher level. In this webinar, we’ll explore how this concept can be visualized and solve AP CS exam-style questions. <a href="https://zoom.us/webinar/register/WN_LaR3My0ZR8SEn6VWlg4pwA"><strong>REGISTER</strong></a><strong>.</strong></li><li><strong>AP CS Principles — Tackling Base Conversions</strong>: (<em>canceled due to changes in this year’s Exam format — no multiple-choice questions.</em><strong>)</strong></li></ul><h3>Self-Study Courses:</h3><p>If you are a parent/guardian of a student who needs help, check out our self-study courses. Great for beginner or advanced users: <a href="https://popfizz.io/self-study/main">https://popfizz.io/self-study/main</a>.</p><p><strong>Watch our videos: </strong><a href="https://www.youtube.com/channel/UCWBkY1K7O_uCgyEAa2mDd0w">https://www.youtube.com/channel/UCWBkY1K7O_uCgyEAa2mDd0w</a></p><p>Educators and Parents, thank you for all that you do for the great minds of our future. We wish everyone continued good health.</p><p>-Jane Lee and the Popfizz Team</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=52c84867d00" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/transitioning-to-online-learning-with-popfizz-52c84867d00">Transitioning to Online Learning with Popfizz</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Own your Teaching: 5 Success factors for Computer Science Professional Development for Teachers —…]]></title>
            <link>https://medium.com/popfizzcs/own-your-teaching-5-success-factors-for-computer-science-professional-development-for-teachers-8b771baf41e3?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/8b771baf41e3</guid>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[teachers]]></category>
            <category><![CDATA[professional-development]]></category>
            <category><![CDATA[coding]]></category>
            <category><![CDATA[education]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Mon, 18 Nov 2019 13:01:24 GMT</pubDate>
            <atom:updated>2019-11-18T13:01:24.103Z</atom:updated>
            <content:encoded><![CDATA[<h3>Own your Teaching: 5 Success factors for Computer Science Professional Development for Teachers — What works?</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*-Ws5B_hqNV4kIPUb_obXPQ.jpeg" /><figcaption>Learning that sticks (<a href="http://www.gpb.org/blogs/georgia-at-work/2018/08/02/coding-bootcamps-help-fill-the-skilled-labor-gap-for-software">Image Source</a>)</figcaption></figure><p>Mrs. Lin, who taught computer science at a prominent private high school in the Bay Area for the past three years, decided to leave teaching to pursue a different career. Mrs. Lin confesses, “It was my first time teaching computer science. I struggled a lot in my first year so the school purchased an online CS course product. It was helpful for a few weeks but it also created new problems. Every student got a perfect score even though I knew some of them shouldn’t. The answers were available online and I felt like I had no control over their learning.”</p><p>Mr. Smith, a CS teacher at a competitive public high school in the area mentioned, “The students really want to learn CS but we don’t have the resources to offer the course to everyone. We’re already packing our labs to its max capacity. The teacher-student ratio is 1:34 and this is only because there are 34 seats. This Summer, we tried hiring new teachers but it didn’t work out — the candidate pool was small and none of them were ready to teach Fall at the AP level.”</p><p>The names of the teachers are pseudonyms as they wanted to remain anonymous for the interview. These are just a few examples of the many stories we hear from school admins and teachers struggling to offer quality computer science education. The interest and demand for CS education are spiking and states are making promises to offer this education to every student. However, schools cannot hire their way to a solution. What makes it even more challenging is that the CS teacher attrition is higher than other subjects. For those of the schools with a CS teacher — know that you are lucky!</p><p>The many stories, field research, and studies all point to this conclusion — <strong>the most sustainable and effective way to provide quality CS education is to support the teachers.</strong></p><h3>Challenges of Professional Development Programs in Computer Science</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*w3lYMzJhQMMLftmM0-4w5Q.jpeg" /><figcaption>The student-centered nature of CS education creates extra challenges (<em>SolStock | Getty Images)</em></figcaption></figure><p>An ongoing computer Science professional development may be the only viable solution to offering quality computer science education. However, there are unique challenges when it comes to computer science professional development. Many of the participating teachers have little or no background in computer science or programming. The following findings are from an article by Yadav et al. [1]</p><p>Beginning teachers face a number of challenges, which includes:</p><ul><li><strong>Teaching outside one’s area </strong><br>Teachers expressed in many cases that they had to learn the concept and at the same time help the students on the go.</li><li><strong>Feeling isolated</strong><br>Generally, one CS teacher teaches computer science at a school. When teachers get stuck or need help, there aren’t many places they can go to ask for help.</li><li><strong>Teaching multiple subject areas</strong><br>Many CS teachers teach other STEM subjects such as Math and Science. This adds extra load to class preparation.</li><li><strong>Classroom management</strong><br>Keeping students on-task in front of computers can be difficult when there are so many distractions online.</li><li><strong>Insufficient planning time</strong><br>Planning day-to-day activities is not easy when teachers need to find resources, learn the content, and make adjustments.</li><li><strong>High teacher-student ratio preventing addressing individual student needs<br></strong>Students working on individual projects may come across all sorts of issues. Troubleshooting just a few of them could take up a whole class time. Giving individual attention is nearly impossible when the teacher-student ratio is high.</li><li><strong>Assessment</strong><br>Students can code in many different ways to produce the same effect. However, some approaches are more efficient and error-proof. Assessing the quality of code requires expertise.</li><li><strong>IT challenges<br></strong>Setting up the right programming environment, updating the hardware and software require support and resources from IT. Often times for small schools, the responsibility falls on the CS teachers.</li></ul><h3>Making CS Teachable</h3><p>From research on experiences of novice teachers, two areas were identified as being most challenging — the content and the pedagogy [2]. Good teaching requires a deep understanding of the subject matter and also the skills to represent and formulate the subject to make it comprehensible to others. Research shows that providing active support in the first year of teaching increases teachers’ content and pedagogical knowledge, self-efficacy, and beliefs about what it means to be a successful teacher [3]. This induction program is shown to reduce teacher attrition rates during the first few years.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/613/1*v4ZxA6dlixtEn_D5UbYDrg.png" /></figure><h3><strong>What works?</strong></h3><p>Professional development and learning communities are crucial for supporting teachers. However, the landscape study by Menekse (2015) found that computer science professional development in the United States not coherent and that it does not specifically address the needs of teachers in terms of computer science pedagogical content knowledge. Menekse also found that there are five factors that make CS professional development effective. The following list is an excerpt from Menekse’s article [4].</p><ol><li><strong>Duration of professional development programs</strong><br>Studies found that programs with longer duration have a significant impact in change of teaching practices and improvement in student learning. Furthermore, professional development programs with multiple sessions over time are more effective. Workshop style one-time professional development programs had no or limited effect on student achievement and change of teaching practices.</li><li><strong>Long term support<br></strong>The support at the implementation phase (first year) can substantially encourage teachers to try new teaching practices</li><li><strong>Incorporating and Modeling active learning methods<br></strong>Creating opportunities for learners to actively participate in the learning processes can significantly affect their interest, attention, and learning outcomes.</li><li><strong>Explicit focus on pedagogical content knowledge<br></strong>A majority of professional development programs were short of how teachers can teach a particular computer science subject and how they can understand the preconceptions that students bring with them. Effective professional development programs should incorporate pedagogical content knowledge to address representation and presentation of concepts in a specific subject matter to students with varying prior conceptions, learning experiences, and diverse interests</li><li><strong>Ongoing collaboration and communication with school leadership and district administration<br></strong>Last but not least, an ongoing collaboration and communication with school leadership and district administration is critical for the effectiveness and sustainability of the professional development programs. Even professional development programs with all other core features sometimes do not have long-term effects on teaching practices and student learning when there is no support from the school leadership.</li></ol><h3>A Brave Solution</h3><p>There are many CS professional development online courses available. What sets Popfizz apart is the ‘Learn the content. Teach the content’ approach. The online professional development courses address the success factors listed above.</p><ul><li><strong>Duration of professional development programs<br></strong>The courses are 15 to 30 hours long which can be completed in series. The CS courses not only cover coding at various levels but also physical computing allowing teachers to design a CS pathway.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/777/1*Z4I4TyXtzJy7CT8mUGMEuA.png" /><figcaption>The most updated list is available at <a href="https://popfizz.io/pd">popfizz.io/pd</a></figcaption></figure><ul><li><strong>Long term support</strong><br>The teachers attending the course get 1:1 live support. The teachers who completed the course many months back still reach out to us with questions.</li><li><strong>Incorporating and Modeling active learning methods<br></strong>There are hands-on exercises and labs that require the teachers to learn the content and experience the thought process of the students. The courses also model effective ways to explain a concept.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*htuTy4huJfuiZDYHm8y20Q.gif" /></figure><ul><li><strong>Explicit focus on pedagogical content knowledge<br></strong>The courses go over common student errors and misconceptions and how they can be revealed and corrected.</li></ul><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FHDZu-3RCZLs%3Ffeature%3Doembed&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DHDZu-3RCZLs&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FHDZu-3RCZLs%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="640" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/03dafc83c156bc14edeb6f295750fce6/href">https://medium.com/media/03dafc83c156bc14edeb6f295750fce6/href</a></iframe><ul><li><strong>Ongoing collaboration and communication with school leadership and district administration<br></strong>Having data is helpful in moving conversations forward. We help guide teachers on the kinds of assessment and data collection that may be useful to reveal insights and track teaching effectiveness. Also, we offer consultation on establishing a well-aligned CS pathway across multiple grade levels.</li></ul><p>Detailed information is available at <a href="https://popfizz.io/pd">popfizz.io/pd</a></p><p>Download the Professional Development overview: <a href="https://popfizz.io/downloads/pd/flyer/Popfizz_PD_Overview.pdf">https://popfizz.io/downloads/pd/flyer/Popfizz_PD_Overview.pdf</a></p><p><strong>Citation</strong></p><p>[1] Muhsin Menekse (2015) Computer science teacher professional development in the United States: a review of studies published between 2004 and 2014, Computer Science Education, 25:4, 325–350, DOI: 10.1080/08993408.2015.1111645</p><p>[2] Yadav, A., Hong, H., &amp; Stephenson, C. (2016). Computational thinking for all: Pedagogical approaches to embedding a 21st century problem solving in K-12 classrooms. TechTrends, 60, 565–568. doi:10.1007/s11528–016–0087–7</p><p>[3] Huling, L., Resta, V., &amp; Yeargain, P. (2012). Supporting and retaining novice teachers. Kappa Delta Pi Record, 48, 140–143.</p><p>[4] Aman Yadav, Sarah Gretter, Susanne Hambrusch &amp; Phil Sands (2016): Expanding computer science education in schools: understanding teacher experiences and challenges, Computer Science Education, DOI: 10.1080/08993408.2016.1257418</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8b771baf41e3" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/own-your-teaching-5-success-factors-for-computer-science-professional-development-for-teachers-8b771baf41e3">Own your Teaching: 5 Success factors for Computer Science Professional Development for Teachers —…</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Designing coding workshops for gifted and talented students]]></title>
            <link>https://medium.com/popfizzcs/designing-coding-workshops-for-gifted-and-talented-students-f1c0aa691e32?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/f1c0aa691e32</guid>
            <category><![CDATA[education]]></category>
            <category><![CDATA[gifted-and-talented]]></category>
            <category><![CDATA[codingbootcamp]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Thu, 29 Aug 2019 11:48:35 GMT</pubDate>
            <atom:updated>2019-08-30T01:24:07.110Z</atom:updated>
            <content:encoded><![CDATA[<blockquote>“The cure for boredom is curiosity. There is no cure for curiosity.”</blockquote><blockquote>- Ellen Parr</blockquote><p>This Summer Popfizz led coding workshops for gifted and talented youth programs — The Stanford x GATSVI (<a href="https://www.gatsvi.org/">https://www.gatsvi.org/</a>) and UC Irvine x BEAM (<a href="https://www.gatisummer.com/">https://www.gatisummer.com/</a>). Students with burning passion and curiosity from all over the world gathered to spend the summer of their lifetime on college campuses.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/960/1*gJ80m_eKb9nu62yXU5oSmA.jpeg" /><figcaption>Students creating a Magic 8-Ball program using Python and MicroBit</figcaption></figure><h3>UC Irvine x BEAM</h3><p>BEAM stands for Biotech Engineering AI Medicine. The students can either focus on Research or Innovation. The two tracks are designed to give students real-world experience in research and entrepreneurship taking advantage of the rich resources and mentorship offered by the University of California, Irvine.</p><h4>Focus</h4><p>Bio-medicine/ Entrepreneurship</p><h4>Activities Overview</h4><p><strong>Goal</strong> — Students will develop algorithms and apply them to solve a real-world problem by creating a software program running on a hardware device.</p><p>Students worked in teams to create projects that could detect a fall and monitor heartbeats using Python programming language, MicroBit, and a pulse sensor. Then they participated in a competition where the peers voted for the best idea.</p><h4>Structure</h4><ol><li><strong>Pre-hackathon</strong> (5–9 hrs, optional): Students are given access to the Popfizz online course created for the UCI BEAM program. The course covers the basics of Python programming to help students build skills for the hackathon.</li><li><strong>Hackathon </strong>(2 hrs) <br><strong>Warm-up</strong>: Getting familiar with the MicroBit (50 mins) <br> For this session, students team up and complete mini-tasks using MicroBit and Python. This helps the students familiarize with MicroBit and build team dynamic.<br><strong>Hackathon</strong>: Creating a project (55 mins)<br>The teams create their projects using Python programming language and MicroBit. Optionally, a pulse sensor is made available for students to collect live heartbeat data.</li><li><strong>Picking the best product </strong>(15 mins) <br>Students get 3 minutes to showcase and pitch their product and everyone votes for the best product. A prize is awarded to the winning team.</li></ol><h3>Stanford x GATSVI</h3><p>GATSVI stands for Gifted And Talented Silicon Valley Innovators. This program focuses on cultivating entrepreneurial skills and gives students opportunities to pitch in front of real investors. Some students already generated revenue from their current startup and most had brilliant ideas that were ready to be realized.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/671/1*NAaUzPP1m0lu78PKdyvcJA.png" /><figcaption>Students pitching and presenting ideas</figcaption></figure><h4>Focus</h4><p>Entrepreneurship</p><h4>Activities Overview</h4><p><strong>Goal</strong> — Students will develop a simple app for their business ideas.</p><p>Students in their teams learned to create a simple app using code.org’s App Lab and got feedback for improvement.</p><h4>Structure</h4><ol><li><strong>Warm-up</strong> (30 mins): Complete the App Lab hour of code activities to learn the basic syntax and to familiarize with the tool.</li><li><strong>Prototyping</strong> (30 mins): Students pick the most important part of their idea and drew out a prototype of their minimum viable product (MVP) using pen and paper.</li><li><strong>Creating the product</strong> (50 mins): Students create 2–3 pages of their app — just enough to demonstrate the core idea.</li><li><strong>Pitching</strong> (15 mins): Teams go around and showcase their final product. Before the student gets to speak, the lead instructor and the rest of the group tries to figure out what the product does and navigate the app without any external guidance.</li></ol><h4>What do students say about the workshop?</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/960/1*8bFxovsAuh270pjkFch0Ww.jpeg" /></figure><p>We’ve had a chance to hear what students had to say about the program. For most girls in the program, this was their first time coding and it was clear that they’ve really engaged in learning. Hear what Aude, an extraordinary and bright student from Burkina Faso has to say.</p><p>“When I came to the University of California, Irvine for the BEAM summer program, I did not have any prior coding experience.</p><p>I was kind of afraid of trying coding for the first time, mainly because I did not know what to do. However, the fact that I was collaborating with my other two teammates helped overcome that fear.</p><p>During the coding hackathon, I mostly enjoyed applying programming to sensors to measure the pulsation rates of the heart. I enjoyed the challenge of using our creativity, critical thinking, and programming to come up with a practical product.</p><p>I initially wanted to pursue either engineering or biology in college because I took AP Biology this year and I really liked it. However, my experience with the hackathon got me interested in programming. Now, I am planning to take courses in programming and engineering in college and major in one of those. I also started learning programming with Python on my own. So this experience really impacted me in a positive way.”</p><p>This is just one of the many stories students shared with us.</p><h3>The Design Principles</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/960/1*AWqDyc-CT4pBBtVMQsiLSg.jpeg" /><figcaption>Students discuss the core features of the app</figcaption></figure><p>So how were the activities constructed? The activities are created on the following principles backed by research:</p><p><strong>Give students the building blocks</strong>[1] — Teach students the underlying concepts and basic mechanisms of how things work. This allows students to flex their creativity and pursue their passion. It also gives them the knowledge and resources to test their ideas, troubleshoot and improve their projects. Avoid giving long instructions that don’t allow much flexibility.</p><p>So how is this applied to the activities?</p><ul><li>Teach students how to read and find information from programming language documentation.</li><li>Discuss what makes up a computer — hardware and software</li><li>Discuss input/output, what it means to close a circuit and how sensors work</li></ul><p><strong>Start with bite-sized tasks</strong>[2] — Think of how you would train for running a marathon, playing a song for someone’s wedding, or painting a mural. It takes steps to build up your skills.</p><p>It’s best to teach one concept at a time and repeat it several times[2]. The cumulative experience of success is crucial in trying out more difficult challenges. It builds the confidence necessary to persist when students face hardship.</p><ul><li>Start with a small project which is gradually upgraded as new topics are covered.</li><li>Give your students a starter code so they can focus on the main algorithm or the key concept.</li><li>Troubleshoot in bite-sizes. This means that instead of creating a large chunk of the program and testing afterward, test every step of the way. Validate as you develop the program. When there’s an overall design flaw, follow the flow of the program and check that each section works as intended by sending in test data. Also, instead of deleting codes, it may be wise to comment them out in case you need to revert back.</li></ul><p><strong>Design group dynamics</strong>[3] — When having students work in groups, guide them through the kinds of roles that each member can take. It helps ease the competition and anxiety. This horizontal distribution of roles may be most effective for simple projects.</p><ul><li>The <strong>driver</strong> does the programming and sits at the keyboard.</li><li>The <strong>navigator</strong> gives guidance to the person at the keyboard.</li><li>The <strong>quality assurer</strong> thinks about exceptions, what kinds of problems it may cause and researches solutions.</li><li>The <strong>designer</strong> deals with user experience. The designer lays out the look and feel of the program, gathers image sources and researches best practices</li><li>Other roles may include a researcher and a marketer</li></ul><p><strong>Alone and Together</strong>[4] — When doing group work in class, it may not be easy to create an individual time where students can work solo. However, for some students, this time is a must. This may be the time where students can dig deeper into their inquiries, test their hypothesis and get valuable answers without feeling overwhelmed by the group. Once the individual session is over, then the group can reconvene and share their findings.</p><p>So if time allows, build in the individual time into the activities. However, make sure to have your students set goals on how best to use this time.</p><p>Contact us for inquiries on running workshops and curriculum consultations: <a href="/service/mailto:team@popfizz.io">team@popfizz.io</a></p><p>→ Check out Popfizz online courses <a href="https://popfizz.io/">here</a>.</p><p><strong>Sources:</strong></p><p>[1] Kim, J.S. Asia Pacific Educ. Rev. (2005) 6: 7. <a href="https://doi.org/10.1007/BF03024963">https://doi.org/10.1007/BF03024963</a></p><p>[2] Rosenshine B., American Educator, v36 n1 p12–19, 39 (2012) <a href="https://files.eric.ed.gov/fulltext/EJ971753.pdf">https://files.eric.ed.gov/fulltext/EJ971753.pdf</a></p><p>[3] Pierre Dillenbourg. What do you mean by collaborative learning?. P. Dillenbourg. Collaborative learning: Cognitive and Computational Approaches., Oxford: Elsevier, pp.1–19, 1999. <a href="https://telearn.archives-ouvertes.fr/hal-00190240/document">https://telearn.archives-ouvertes.fr/hal-00190240/document</a></p><p>[4] Pescosolido, A. T. (2003). Group Efficacy And Group Effectiveness: The Effects of Group Efficacy Over Time on Group Performance and Development. Small Group Research, 34(1), 20–42. <a href="https://doi.org/10.1177/1046496402239576">https://doi.org/10.1177/1046496402239576</a></p><p><strong>Related Links</strong>:</p><ul><li>Stanford x GATSVI Program <a href="https://www.gatsvi.org/">https://www.gatsvi.org/</a></li><li>UC Irvine x BEAM Program <a href="https://www.gatisummer.com/">https://www.gatisummer.com/</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f1c0aa691e32" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/designing-coding-workshops-for-gifted-and-talented-students-f1c0aa691e32">Designing coding workshops for gifted and talented students</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The New 19–20 AP CSA Lab Overview]]></title>
            <link>https://medium.com/popfizzcs/the-new-19-20-ap-csa-lab-overview-3c09d397458b?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/3c09d397458b</guid>
            <category><![CDATA[ap-computer-science]]></category>
            <category><![CDATA[programming]]></category>
            <category><![CDATA[java-programming]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Mon, 05 Aug 2019 17:48:30 GMT</pubDate>
            <atom:updated>2019-08-06T21:35:31.715Z</atom:updated>
            <content:encoded><![CDATA[<h3>Overview</h3><p>The new AP CSA labs are released! In addition to the Magpie, Picture and Elevens lab, now there are 4 more labs to help your students put their learning to practice. They can replace or extend the existing labs. Let’s take a look at what they are.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/667/1*2yq_1cKNrYHFa5qKCBsxiQ.png" /></figure><p>The new labs:</p><ul><li>Make more explicit connections to the real world and its ethical and social implications.</li><li>Provide Student Activity handouts with more detailed steps, prompts, and questions.</li><li>Encourage open-ended activity at the end of the structured lab activities and offer grading rubrics.</li></ul><h3>Lab 1 — Consumer Review Lab</h3><p>Have you heard of the Twitter sentiment analysis program? It’s a program that gathers twitter feeds around a keyword and gives you a number rating of how people feel about it. If you are familiar with it, you should easily recognize the concepts covered in this lab.</p><p>The Consumer Review lab, in my personal opinion, can be used to replace the Magpie Lab. Different from the Magpie Lab, this one deals with the Strings AND numbers.</p><p><strong>The Ultimate Task</strong>: Students will generate fake reviews.<br><strong>Difficulty</strong>: ★<br><strong>Introduce after: </strong>Unit 4<br><strong>Total Class Periods:</strong> 6<strong><br>Skills</strong>:</p><ul><li>Work with multiple classes</li><li>String class methods</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*IWo-e24A1WUyPzkJ6YXOpQ.png" /><figcaption>The Consumer Review Lab — work with sentiment values</figcaption></figure><h4>Activity 1- Introductions (Reviews and Sentiment Value)</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:<br>* Work with methods — parameters, return values</p><p><strong>Tasks</strong>:<br>* Using sentimentVal method, get the sentiment value for at least 3 words.</p><p>Examples:<br>sentimentVal(“happily”); //return 2.32<br>sentimentVal(“terrible”); //return -3.38<br>sentimentVal(“cold”); //return -0.04</p><h4>Activity 2 — Sentiment Value and Star Ratings</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Sum algorithm</li><li>Be able to parse a sentence by words and clean it up (remove punctuations)</li><li>Work with conditional statements and understand the importance of the order of the conditions</li></ul><p><strong>Tasks</strong>:</p><ul><li>Get sentiment value for the whole review by writing a method called totalSentiment. Read in a txt file with the review and return the total sentiment value which is the sum of the sentimentVals.</li><li>Write a method that would determine a star rating of a review. Use totalSentiment to get the sum of the sentimentVals</li></ul><p>Example:</p><p>totalSentimentVal(“26WestReview.txt”) //return 29.05<br>starRating(“26WestReview.txt”) //return 4<br>totalSentimentVal(“SimpleReview.txt”) //return -2.92<br>starRating(“SimpleReview.txt”) //return 1</p><h4>Activity 3 — Autogenerated Review</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Work with String class methods</li><li>Understand static methods and variables</li></ul><p><strong>Tasks</strong>:</p><ul><li>Write a method called fakeReview that will replace adjectives in the given review *word with a random adjective.</li></ul><p><strong>Example</strong>:<br>A test file containing:The *quick *brown fox jumps over the *lazy dog.<br>may produce as its output:The speedy smoky fox jumps over the fast dog.</p><h4>Activity 4 — Autogenerated Review</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Work with relational operators and conditional statements</li></ul><p><strong>Tasks</strong>:</p><ul><li>Upgrade the fakeReview method so that it generates a review with a stronger sentiment.</li></ul><h3>Lab 2 — Data Lab</h3><p>The Data Lab works with the weather data from the data.gov site. What’s exciting about this lab is that it lets students work with real-world data.</p><p>One thing to note is that Data Lab requires you to work with an external library called <em>Sinbad</em>. The Sinbad library takes care of the challenges of retrieving the XML file, parsing data and creating objects with them. By using the library, you can focus on the key ideas of the project without having to deal with the challenging parts of fetching and processing the data.</p><p>However, it means that you’ll need to be able to reference documentation like this one and be able to understand how it works in your code. <a href="https://github.com/berry-cs/sinbad/blob/master/tutorials/java/welcome02-obj.md">https://github.com/berry-cs/sinbad/blob/master/tutorials/java/welcome02-obj.md</a></p><p><strong>The Ultimate Task</strong>: Create weather objects, assign XML data, and compare them.<br><strong>Difficulty</strong>: ★<br><strong>Introduce after: </strong>Unit 7<br><strong>Total Class Periods:</strong> 8<strong><br>Skills</strong>:</p><ul><li>Create a class and instantiate objects</li><li>Compare values</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*HilLE7v5U8Ae7PlPt0h3Kg.png" /><figcaption>The Data Lab — works with real-world data</figcaption></figure><h4>Activity 1 — Data, Data, Data!</h4><p><strong>Time</strong>: 1 class period<br><strong>Tasks:</strong></p><ul><li>Discuss privacy policies</li><li>Learn about file formats — csv, xlsx, JSON, XML</li><li>explore data sets at <a href="http://www.data.gov/">http://www.data.gov</a> and other sites.</li></ul><h4>Activity 2 — Designing and Implementing a Custom Class</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Create a class and instantiate objects</li></ul><p><strong>Tasks:</strong></p><ul><li>Explore the given data in cereal.csv file</li><li>Design and create a class — instance variables, constructors, getter methods</li></ul><h4>Activity 3 — Putting It All Together</h4><p><strong>Time</strong>: 2 class period<br><strong>Skills</strong>:</p><ul><li>Create objects</li><li>Put objects in an ArrayList. Traverse through it and compare data.</li></ul><p><strong>Tasks:</strong></p><ul><li>Use the Sinbad library to work with the weather data.</li><li>Compare data from three different locations — find the coldest location.</li><li>Filter weather stations in a given state. Create and put WeatherStation objects in an ArrayList. Find the southernmost weather station.</li></ul><h3>Lab 3 — Steganography</h3><p>Steganography is the art of hiding information in plain sight — a painting, crossword puzzles, advertisements and in other mundane looking places.</p><p>It is recommended but not required that students complete Picture Lab Activities. In the Picture Lab activities, the Steganography is recommended as an ‘Extensions’ activity.</p><p>Students need to understand binary systems, RGB values and how colors are represented using binary numbers. Here’s an introductory video that you can use in your class to discuss this topic → <a href="https://youtu.be/RjufWKLYkYo">https://youtu.be/RjufWKLYkYo</a></p><p><strong>The Ultimate Task</strong>: Conceal a secret message within a picture by altering pixel values.<br><strong>Difficulty</strong>: ★★★<br><strong>Introduce after: </strong>Unit 8<br><strong>Total Class Periods:</strong> 6<strong><br>Skills</strong>:</p><ul><li>Base conversions (binary ↔ decimal)</li><li>Manipulating numbers using integer division, modulus, and type casting</li><li>Array traversal</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*VegngOIb49sQSRKcmneMWQ.png" /><figcaption>Steganography Lab — One image contains a secret message</figcaption></figure><h4>Activity 1 — Exploring Color</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Describe RGB hexadecimal values.</li><li>Binary and decimal conversion</li><li>Manipulate numbers using division and modulus</li></ul><p><strong>Tasks:</strong></p><ul><li>Explore the hexadecimal value of colors</li><li>Create an algorithm to alter the binary numbers of a color value.</li><li>Create a Steganography class and create a method implementing the color alteration algorithm.</li><li>Call the method on an image and compare before and after it was altered.</li></ul><h4>Activity 2 — Hiding and Revealing a Picture</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Manipulate numbers using division and modulus</li><li>Type casting</li></ul><p><strong>Tasks:</strong></p><ul><li>Write a method called canHide that determine if the source picture and the secret picture have the same width and height.</li><li>Write a method called hidePicture that uses an algorithm to hide the secret picture. Return the new picture.</li></ul><h4>Activity 3 — identifying a Hidden Picture</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Array traversal</li></ul><p><strong>Tasks:</strong></p><ul><li>Write a method to compare if the two pictures are exactly the same.</li><li>Write a method which takes the two pictures and make a list of the coordinates that are different.</li><li>Write a method that draws a rectangle around the part of the picture that is different.</li></ul><h4>Activity 4 — Hiding and Revealing a Text Message</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Base conversion</li><li>Array traversal</li></ul><p><strong>Tasks:</strong></p><ul><li>Represent alphabet in decimal values.</li><li>The rightmost two bits in each color value of each pixel are used to store the coded message.</li><li>Apply the above logic in a method. Return the altered image that has the hidden message.</li></ul><h3>Lab 4 — Celebrity</h3><p>Celebrity is a charades-like game where each player adds information about several “celebrities” to a pool. A random celebrity from the pool is picked and one player provides clues about the celebrity‘s identity to another player until the other player guesses the celebrity‘s name. The Celebrity covers similar programming concepts covered in the Elevens Lab such as designing a game with multiple classes and using inheritance to create a variation of the game.</p><p>Recommended to be introduced after Unit 9.</p><p><strong>The Ultimate Task</strong>: Create a game of charades<br><strong>Difficulty</strong>: ★★<br><strong>Introduce after: </strong>Unit 9<br><strong>Total Class Periods:</strong> 7<strong><br>Skills</strong>:</p><ul><li>Creating classes using inheritance</li><li>Using polymorphism concepts to create and work with subclass objects</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*zhibKYSISvNC5-4EccSIJA.gif" /><figcaption>Celebrity Lab — Let’s play!</figcaption></figure><h4>Activity 1 — Introduction to Celebrity</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Design a class</li></ul><p><strong>Tasks:</strong></p><ul><li>Play a game of Celebrity in teams. Write down 5 celebrity names. The reader picks a name then provides hints and the guesser guesses the name of the celebrity. When guessed right, the team wins a point. Then the next team plays for points.</li><li>Design a Game class and a play method to create the Celebrity game using Java.</li></ul><h4>Activity 2 — The Celebrity Class: A Simple Version</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Create a class</li></ul><p><strong>Tasks:</strong></p><ul><li>Create the Celebrity class and test it with a Runner file.</li></ul><h4>Activity 3 — Putting It All Together</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Work with multiple classes.</li><li>Create ArrayList of objects.</li></ul><p><strong>Tasks:</strong></p><ul><li>Work with CelebrityGame.java file</li><li>Create an ArrayList of Celebrity objects and create a constructor.</li><li>Complete the given method to validate that the Celebrity name entered in by the player has at least 4 characters.</li><li>Complete the given method to validate that the Hint entered in by the player has at least 10 characters.</li><li>Complete the addCelebrity method.</li><li>Complete the getCelebrityGameSize method. Simply return how many celebrities are in the list.</li><li>Complete the processGuess method. Return if the guess matches the celebrity name.</li><li>Complete the sendClue method. Simply return the clue.</li></ul><h4>Activity 4 — Extending the Celebrity Class</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Extend a class using inheritance</li><li>Understand and apply polymorphism concepts to the program</li></ul><p><strong>Tasks:</strong></p><ul><li>Analyze how the Fictional Celebrity game will diverge from the “default” Celebrity game.</li><li>Create the Celebrity subclass</li><li>Override methods as needed</li><li>Write other methods as needed.</li><li>Modify addCelebrity so that different types of subclass objects can be created and be added to the celebGameList.</li><li>Update the validator methods so it works with different types of objects.</li><li>Modify GUI components.</li></ul><p>We’ll be adding these labs to the <a href="https://popfizz.io/courses/ap-computer-science-a-_updated/class">Popfizz AP-CSA online course</a> so that you can work on them using a browser and save your work on the cloud. Also, the labs will be introduced in steps with scaffolding questions and mini-projects to help along the way.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/800/1*m7cGFJBMnvvbWClus-QWOQ.png" /></figure><p>Check out the courses at <a href="http://popfizz.io/">http://popfizz.io</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=3c09d397458b" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/the-new-19-20-ap-csa-lab-overview-3c09d397458b">The New 19–20 AP CSA Lab Overview</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The New 19–20 AP CSA Lab O]]></title>
            <link>https://medium.com/@popfizz/the-new-19-20-ap-csa-lab-o-f41a3fb4ba70?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/f41a3fb4ba70</guid>
            <category><![CDATA[programming]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[csaap]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Mon, 05 Aug 2019 13:33:51 GMT</pubDate>
            <atom:updated>2019-08-05T17:46:30.998Z</atom:updated>
            <content:encoded><![CDATA[<h3>The New 19–20 AP CSA Lab Overview</h3><h3>Overview</h3><p>The new AP CSA labs are released! In addition to the Magpie, Picture and Elevens lab, now there are 4 more labs to help your students put their learning to practice. They can replace or extend the existing labs. Let’s take a look at what they are.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/667/1*2yq_1cKNrYHFa5qKCBsxiQ.png" /></figure><p>The new labs:</p><ul><li>Make more explicit connections to the real world and its ethical and social implications.</li><li>Provide Student Activity handouts with more detailed steps, prompts, and questions.</li><li>Encourage open-ended activity at the end of the structured lab activities and offer grading rubrics.</li></ul><h3>Lab 1 — Consumer Review Lab</h3><p>Have you heard of the Twitter sentiment analysis program? It’s a program that gathers twitter feeds around a keyword and gives you a number rating of how people feel about it. If you are familiar with it, you should easily recognize the concepts covered in this lab.</p><p>The Consumer Review lab, in my personal opinion, can be used to replace the Magpie Lab. Different from the Magpie Lab, this one deals with the Strings AND numbers.</p><p><strong>The Ultimate Task</strong>: Students will generate fake reviews.<br><strong>Difficulty</strong>: ★<br><strong>Introduce after: </strong>Unit 4<br><strong>Total Class Periods:</strong> 6<strong><br>Skills</strong>:<br>* Work with multiple classesString class methods</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*IWo-e24A1WUyPzkJ6YXOpQ.png" /><figcaption>The Consumer Review Lab — work with sentiment values</figcaption></figure><h4>Activity 1- Introductions (Reviews and Sentiment Value)</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:<br>* Work with methods — parameters, return values</p><p><strong>Tasks</strong>:<br>* Using sentimentVal method, get the sentiment value for at least 3 words.</p><p>Examples:<br>sentimentVal(“happily”); //return 2.32<br>sentimentVal(“terrible”); //return -3.38<br>sentimentVal(“cold”); //return -0.04</p><h4>Activity 2 — Sentiment Value and Star Ratings</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Sum algorithm</li><li>Be able to parse a sentence by words and clean it up (remove punctuations)</li><li>Work with conditional statements and understand the importance of the order of the conditions</li></ul><p><strong>Tasks</strong>:</p><ul><li>Get sentiment value for the whole review by writing a method called totalSentiment. Read in txt file with the review and return the total sentiment value which is the sum of the sentimentVals.</li><li>Write a method that would determine a star rating of a review. Use totalSentiment to get the sum of the sentimentVals</li></ul><p>Example:</p><p>totalSentimentVal(“26WestReview.txt”) //return 29.05<br>starRating(“26WestReview.txt”) //return 4<br>totalSentimentVal(“SimpleReview.txt”) //return -2.92<br>starRating(“SimpleReview.txt”) //return 1</p><h4>Activity 3 — Autogenerated Review</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Work with String class methods</li><li>Understand static methods and variables</li></ul><p><strong>Tasks</strong>:</p><ul><li>Write a method called fakeReview that will replace adjectives in the given review *word with a random adjective.</li></ul><p><strong>Example</strong>:<br>A test file containing:The *quick *brown fox jumps over the *lazy dog.<br>may produce as its output:The speedy smoky fox jumps over the fast dog.</p><h4>Activity 4 — Autogenerated Review</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Work with relational operators and conditional statements</li></ul><p><strong>Tasks</strong>:</p><ul><li>Upgrade the fakeReview method so that it generates a review with a stronger sentiment.</li></ul><h3>Lab 2 — Data Lab</h3><p>The Data Lab works with the weather data from data.gov site. What’s exciting about this lab is that it lets students work with real data.</p><p>One thing to note is that Data Lab requires you to work with an external library called Sinbad. The Sinbad library takes care of the challenges of retrieving the XML file, parsing data and creating objects with them. By using the library, you can focus on the key ideas of the project without having to deal with the challenging parts of fetching and processing the data.</p><p>However, it means that you’ll need to be able to reference documentation like this one and be able to understand how it works in your code. <a href="https://github.com/berry-cs/sinbad/blob/master/tutorials/java/welcome02-obj.md">https://github.com/berry-cs/sinbad/blob/master/tutorials/java/welcome02-obj.md</a></p><p><strong>The Ultimate Task</strong>: Create weather objects, assign XML data, and compare them.<br><strong>Difficulty</strong>: ★<br><strong>Introduce after: </strong>Unit 7<br><strong>Total Class Periods:</strong> 8<strong><br>Skills</strong>:</p><ul><li>Create a class and instantiate objects</li><li>Compare values</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*HilLE7v5U8Ae7PlPt0h3Kg.png" /><figcaption>The Data Lab — work with live data</figcaption></figure><h4>Activity 1 — Data, Data, Data!</h4><p><strong>Time</strong>: 1 class period<br><strong>Tasks:</strong></p><ul><li>Discuss privacy policies</li><li>Learn about file formats — csv, xlsx, JSON, XML</li><li>explore data sets at <a href="http://www.data.gov/">http://www.data.gov</a> and other sites.</li></ul><h4>Activity 2 — Designing and Implementing a Custom Class</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Create a class and instantiate objects</li></ul><p><strong>Tasks:</strong></p><ul><li>Explore the given data in cereal.csv file</li><li>Design and create a class — instance variables, constructors, getter methods</li></ul><h4>Activity 3 — Putting It All Together</h4><p><strong>Time</strong>: 2 class period<br><strong>Skills</strong>:</p><ul><li>Create objects</li><li>Put objects in an ArrayList. Traverse through it and compare data.</li></ul><p><strong>Tasks:</strong></p><ul><li>Use the Sinbad library to work with the weather data.</li><li>Compare data from three different locations — find the coldest location.</li><li>Filter weather stations in a given state. Create and put WeatherStation objects in an ArrayList. Find the southernmost weather station.</li></ul><h3>Lab 3 — Steganography</h3><p>Steganography is the art of hiding information in plain sight — a painting, crossword puzzles, advertisements and in other mundane looking places.</p><p>Recommended but not required that students complete Picture Lab Activities. In the Picture Lab activities, the Steganography is recommended as an ‘Extensions’ activity.</p><p><strong>The Ultimate Task</strong>: Conceal a secret message within a picture by altering pixel values.<br><strong>Difficulty</strong>: ★★★<br><strong>Introduce after: </strong>Unit 8<br><strong>Total Class Periods:</strong> 6<strong><br>Skills</strong>:</p><ul><li>Base conversions (binary ↔ decimal)</li><li>Manipulating numbers using integer division, modulus, and type casting</li><li>array traversal</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*VegngOIb49sQSRKcmneMWQ.png" /><figcaption>Steganography Lab — One image contains a secret message</figcaption></figure><h4>Activity 1 — Exploring Color</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Describe RGB hexadecimal values.</li><li>Binary and decimal conversion</li><li>Manipulate numbers using division and modulus</li></ul><p><strong>Tasks:</strong></p><ul><li>Explore the hexadecimal value of colors</li><li>Create an algorithm to alter the binary numbers of a color value.</li><li>Create a Steganography class and create a method implementing the color alteration algorithm.</li><li>Call the method on an image and compare before and after it was altered.</li></ul><h4>Activity 2 — Hiding and Revealing a Picture</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Manipulate numbers using division and modulus</li><li>Type casting</li></ul><p><strong>Tasks:</strong></p><ul><li>Write a method called canHide that determine if the source picture and the secret picture have the same width and height.</li><li>Write a method called hidePicture that uses an algorithm to hide the secret picture. Return the new picture.</li></ul><h4>Activity 3 — identifying a Hidden Picture</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Array traversal</li></ul><p><strong>Tasks:</strong></p><ul><li>Write a method to compare if the two pictures are exactly the same.</li><li>Write a method which takes the two pictures and make a list of the coordinates that are different.</li><li>Write a method that draws a rectangle around the part of the picture that is different.</li></ul><h4>Activity 4 — Hiding and Revealing a Text Message</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Base conversion</li><li>Array traversal</li></ul><p><strong>Tasks:</strong></p><ul><li>Represent alphabet in decimal values.</li><li>The rightmost two bits in each color value of each pixel are used to store the coded message.</li><li>Apply the above logic in a method. Return the altered image that has the hidden message.</li></ul><h3>Lab 4 — Celebrity</h3><p>Celebrity is a charades-like game where each player adds information about several “celebrities” to a pool. A random celebrity from the pool is picked and one player provides clues about the celebrity‘s identity to another player until the other player guesses the celebrity‘s name. The Celebrity covers similar programming concepts covered in the Elevens Lab such as designing a game with multiple classes and using inheritance to create a variation of the game.</p><p>Recommended to be introduced after Unit 9.</p><p><strong>The Ultimate Task</strong>: Create a game of charades<br><strong>Difficulty</strong>: ★★<br><strong>Introduce after: </strong>Unit 9<br><strong>Total Class Periods:</strong> 7<strong><br>Skills</strong>:</p><ul><li>Creating classes using inheritance</li><li>Using polymorphism concepts to create and work with subclass objects</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*zhibKYSISvNC5-4EccSIJA.gif" /><figcaption>Celebrity Lab — Let’s play!</figcaption></figure><h4>Activity 1 — Introduction to Celebrity</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Design a class</li></ul><p><strong>Tasks:</strong></p><ul><li>Play a game of Celebrity in teams. Write down 5 celebrity names. The reader picks a name then provides hints and the guesser guesses the name of the celebrity. When guessed right, the team wins a point. Then the next team plays for points.</li><li>Design a Game class and a play method to create the Celebrity game using Java.</li></ul><h4>Activity 2 — The Celebrity Class: A Simple Version</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Create a class</li></ul><p><strong>Tasks:</strong></p><ul><li>Create the Celebrity class and test it with a Runner file.</li></ul><h4>Activity 3 — Putting It All Together</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Work with multiple classes.</li><li>Create ArrayList of objects.</li></ul><p><strong>Tasks:</strong></p><ul><li>Work with CelebrityGame.java file</li><li>Create an ArrayList of Celebrity objects and create a constructor.</li><li>Complete the given method to validate that the Celebrity name entered in by the player has at least 4 characters.</li><li>Complete the given method to validate that the Hint entered in by the player has at least 10 characters.</li><li>Complete the addCelebrity method.</li><li>Complete the getCelebrityGameSize method. Simply return how many celebrities are in the list.</li><li>Complete the processGuess method. Return if the guess matches the celebrity name.</li><li>Complete the sendClue method. Simply return the clue.</li></ul><h4>Activity 4 — Extending the Celebrity Class</h4><p><strong>Time</strong>: 1 class period<br><strong>Skills</strong>:</p><ul><li>Extend a class using inheritance</li><li>Understand and apply polymorphism concepts to the program</li></ul><p><strong>Tasks:</strong></p><ul><li>Analyze how the Fictional Celebrity game will diverge from the “default” Celebrity game.</li><li>Create the Celebrity subclass</li><li>Override methods as needed</li><li>Write other methods as needed.</li><li>Modify addCelebrity so that different types of subclass objects can be created and be added to the celebGameList.</li><li>Update the validator methods so it works with different types of objects.</li><li>Modify GUI components.</li></ul><p>We’ll be adding these labs to the <a href="https://popfizz.io/courses/ap-computer-science-a-_updated/class">Popfizz AP-CSA online course</a> so that you can work on them using a browser and save your work on the cloud. Also, the labs will be introduced in steps with scaffolding questions and mini-projects to help along the way.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/800/1*m7cGFJBMnvvbWClus-QWOQ.png" /></figure><p>Check out the courses at http://popfizz.io</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f41a3fb4ba70" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Popfizz Launches a Free Online PD Program]]></title>
            <link>https://medium.com/popfizzcs/popfizz-launches-a-free-online-pd-program-81ffd4b05f1f?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/81ffd4b05f1f</guid>
            <category><![CDATA[edtech]]></category>
            <category><![CDATA[education]]></category>
            <category><![CDATA[professional-development]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[teaching]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Fri, 19 Jul 2019 20:40:16 GMT</pubDate>
            <atom:updated>2019-07-19T21:41:18.576Z</atom:updated>
            <content:encoded><![CDATA[<p>A student from a high school in Florida recently reached out to us expressing his concern for the lack of teacher expertise and assistance needed when he found himself struggling through the AP CS curriculum. He claimed that “when it came to talking or writing the code and it’s workings out, there was very little help provided. No attention was paid to struggling students only the ones who have had prior knowledge before taking the course and that was frustrating.” This is a recurring problem not just in Florida, but across many states in the US: a lack of professional development opportunities for computer science teachers. The important takeaway is, online platforms and learning tools are not enough. Students need teachers to step-in and explain problems, answer challenging questions, and guidance throughout their CS learning experience.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*nKcihwz_DWiyEGRVs0OekA.png" /></figure><p>Also, according to a survey conducted by Popfizz, an overwhelming number of CS teachers wanted to improve their coding skills over the summer.</p><p>That’s why Popfizz is thrilled to announce our new PD Summer Program that covers Intro to CS with Python and Raspberry Pi, AP CS-A (Java), and AP CS Principles. This is a 5-day intensive course that allows teachers to quickly sharpen their CS skills to gain confidence teaching in the classroom. Teachers will have access to a hands-on learning experience with daily check-ins, interactive exercises, and additional training to enhance their CS knowledge for the classroom. Teachers who have no experience in coding are welcome too!</p><p>Each day will have two components: a daily check-in and a daily task</p><p><strong>The daily check-in lasts 30 minutes and includes:</strong></p><ul><li>Important concepts/ Lecture materials</li><li>Common mistakes students make</li><li>Tips and Tricks</li><li>Any questions teachers may have</li></ul><p>While daily task includes practice questions and projects that last 2 hours.</p><p><strong>Online Course Assignment:</strong></p><p>Free access is granted to our online course where you can go through the step-by-step lectures, get plenty of exercises, and create coding projects.</p><p>To check out more information about our Free Online PD Summer Program, and to sign up, visit our website at: <a href="https://popfizz.io/pd">https://popfizz.io/pd</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=81ffd4b05f1f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/popfizz-launches-a-free-online-pd-program-81ffd4b05f1f">Popfizz Launches a Free Online PD Program</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Intro to Physical Computing with Raspberry Pi and Python]]></title>
            <link>https://medium.com/popfizzcs/intro-to-physical-computing-with-raspberry-pi-and-python-14373b17a8dd?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/14373b17a8dd</guid>
            <category><![CDATA[k12]]></category>
            <category><![CDATA[python]]></category>
            <category><![CDATA[makers]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[raspberry-pi]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Thu, 09 May 2019 10:58:45 GMT</pubDate>
            <atom:updated>2020-02-01T10:34:15.404Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PYaRqJGXmtLIvG9idCup3A.png" /></figure><p>Popfizz Computer Science presents “Intro to Physical Computing with Raspberry Pi and Python” course. Embark on a wonderful journey that will have you coding and building projects in no time! You will quickly see that Raspberry Pi is a diverse tool that will make you excited to dive into Python and Physical Computing.</p><h3><strong>About the course</strong></h3><p>The course consists of big and small projects designed to foster creativity, logical thinking, and the maker mindset. The course has two parts — learning Python programming and building projects using Raspberry Pi.</p><p>Depending on the course pacing, it may be covered in a semester or in a year.</p><ul><li>Chapter 1. Getting Started with Raspberry Pi</li><li>Chapter 2. Learn Python (6 Units)</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*HO3yW0OgJThPx9W5wA3QXA.png" /><figcaption>Python Projects</figcaption></figure><ul><li>Chapter 3. Introduction to Physical Computing with Raspberry Pi. (6 units)</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hXFxtTdmlcPc5WBWunZG1Q.png" /><figcaption>Raspberry Pi Projects</figcaption></figure><ul><li>Chapter 4. The Final Project</li></ul><h3><strong>The Maker Mindset in Education</strong></h3><p>All Popfizz courses are created in collaboration with expert teachers who have tested the curriculum for many iterations and refined it to work best in classroom settings. Nicholas Provenzano or <a href="http://www.thenerdyteacher.com/">The Nerdy Teacher</a> took the lead. Nicholas is the Makerspace Director/ Technology Coordinator at <br>University Liggett School, Grosse Pointe Michigan. Nicholas has been active in the Raspberry Pi community, taught the subject for several years and trained many teachers through his work with the <a href="https://codeclub.org/en/">Code Club</a>.</p><p>Nicholas is a big advocate of the maker mindset in education and has published several books on the topic. A <a href="https://www.edsurge.com/news/2016-06-06-6-must-haves-for-developing-a-maker-mindset">Maker mindset </a>cultivates an appreciation for failure, values reflection and playfulness.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Ml3Qh_T7OVw53Spzh2ULZA.png" /></figure><p>Here is an interview with Nicholas that illustrates how the maker mindset is weaved into the curriculum.</p><p><strong><em>Q. What’s so great about learning CS with Raspberry Pi?</em></strong></p><blockquote>It’s like this Swiss Army Knife of makers.</blockquote><p>You can use it for digital coding, you can do it for physical computing, cameras, lights, buzzers, sensors — it really opens up an infinite number of possibilities for any type of maker out there.</p><p>It’s the idea of taking something intangible like code and making something physical with physical computing. So it’s that idea of taking sort of the abstract and making it real and hard to touch and play with and to move. So I really like that opportunity to physically build things instead of just relying on the code.</p><p><strong><em>Q. What fascinates your students about computer science?</em></strong></p><p>For every student, it’s a little bit different. Sometimes the students love just the idea of coding games and using scratch or using Minecraft. Others want to build physical things. They like that idea of using a soldering iron and putting together a button and light system. Every kid approaches it differently but that’s what is so nice about Raspberry Pi and computer science, in general, is that it allows kids to pursue their interests because there are so many ways you can engage in those areas.</p><p><strong><em>Q. What do students find most challenging and what do they find most rewarding?</em></strong></p><p><strong>I think the most challenging is patience</strong>. One of the things about coding and anyone would tell you is that there hasn’t been a coder alive that has written code that worked the very first time around. And I think for kids, it’s a really wonderful skill to work on when it comes to patience, proofreading, and debugging. So I actually, well it’s tough for them, it’s actually a really good lesson for them to learn about any type of problem-solving or critical thinking.</p><blockquote>What do they enjoy the most out of it, or find most satisfying is the creation of the final product. Any person that has ever made anything, ever, anywhere <strong>you feel a sense of pride when you’ve created something and it works or does exactly what you wanted it to do and there are very few things that could replicate that feeling.</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*iw1KEdXTJRdEYJp1qtJwww.png" /></figure><p>So when a kid can feel successful in a classroom setting, whether it is with computer science, Raspberry Pi or anything else, <strong>that’s a win for a teacher.</strong></p><p><strong><em>Q. Who should take this course?</em></strong></p><p>I think this course is great for anyone that’s excited to learn about Python, Raspberry Pi, and physical computing. Really you have to be open-minded for any new topic and Raspberry Pi is a great place to start if you are looking to engage in coding and physical computing in general.</p><p><strong><em>Q. What can students learn from the course?</em></strong></p><p>A little bit of everything. That’s what the best part of this course is, is that you’ll learn the basics to Python so it’ll allow you to explore very intro-level Python coding to super complex ideas of running a motion sensor with a camera, with a button, and with an LED and a buzzer all combined together so, by the end, you really feel like a python master of Raspberry Pi which is a great feeling to have because it opens up a world of possibilities for projects down the line.</p><p><strong><em>Q. Is there anything you would like to share with the teachers who are trying this out for the first time?</em></strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*2OgW_IIj6XdbSvgHY7S6Sg.png" /></figure><p><strong>Be comfortable with failing.</strong> The best thing I can tell you is that the first time you are going to do it, you are going to mess up. You are going to put something in the wrong place, you are going to burn out an LED, your code is going to be wrong and it’s important to remember that this is how your students are going to feel. And if you get frustrated and give up, your students are going to get frustrated and give up.</p><blockquote>So be open and honest with your kids that this is due to you and you are learning and they’ll actually be more comfortable helping you solve this problem alongside them as opposed to just giving up and moving on. <strong>So be prepared to fail but also be prepared to learn from those failures.</strong></blockquote><p>Watch the full interview video:</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FscSncydv1Gw%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DscSncydv1Gw&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FscSncydv1Gw%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/08f1d62b436c0e7600c5fca5241d16e3/href">https://medium.com/media/08f1d62b436c0e7600c5fca5241d16e3/href</a></iframe><h3>How do I get started?</h3><p>Take the full course on your <a href="https://popfizz.io/courses/intro-to-computer-science-with-raspberry-pi-and-python/individual">own</a>, or with your <a href="https://popfizz.io/courses/intro-to-computer-science-with-raspberry-pi-and-python/class">class</a>. Begin learning Python programming, then use the programming skills to control your Raspberry Pi board. If you want to jump right into building projects, you can simply watch <a href="https://www.youtube.com/watch?v=ry8hi4VtfF4&amp;list=PLySgMiWoycp08Jvd5pnmlz-fNoSzbqwFx">videos</a> and try them out.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2Fry8hi4VtfF4%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3Dry8hi4VtfF4&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2Fry8hi4VtfF4%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/ea14278e59e32dfac8d8e0e188723057/href">https://medium.com/media/ea14278e59e32dfac8d8e0e188723057/href</a></iframe><p><strong>What do I need?</strong></p><p>For Python programming, you can use the online IDE provided by Popfizz or you can use any Python programming environment of your choice.</p><p>For Raspberry Pi components, you’ll need the following:</p><ul><li>Raspberry Pi 4 Board and Micro USB Power Supply</li><li>Micro SD Card and Card Reader</li><li>Breadboard</li><li>Jumper wires - MM/ FM/ FF</li><li>Buttons</li><li>LEDs and resistors</li><li>light sensor (photoresistor) and 1 uF capacitor</li><li>PIR motion sensor</li><li>Buzzer</li><li>Camera</li></ul><p>If you don’t have all the components, consider the Popfizz Computer Science Kit option which has everything you need at $115. Click <a href="https://popfizz.io/products/raspberry-pi-kit">here</a> to order.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/960/1*k78adL0wJbdlOQj0FRQodA.png" /></figure><p>For any inquiries, contact hello@popfizz.io.</p><p><strong>Further Readings and Resources</strong></p><ul><li><a href="https://www.edutopia.org/blog/capture-learning-crafting-maker-mindset-lisa-yokana">An Edutopia article “Capture the Learning: Crafting the Maker Mindset”</a></li><li><a href="https://www.amazon.com/dp/1721611932">The Maker Mentality book</a></li><li><a href="https://www.youtube.com/watch?v=ry8hi4VtfF4&amp;list=PLySgMiWoycp08Jvd5pnmlz-fNoSzbqwFx">Raspberry Pi and Python course video playlist</a></li><li><a href="http://www.thenerdyteacher.com/">Nick’s The Nerdy Teacher Blog</a></li><li><a href="https://popfizz.io/courses/intro-to-computer-science-with-raspberry-pi-and-python/class">Intro to Physical Computing with Raspberry Pi and Python course</a></li><li><a href="https://popfizz.io/products/raspberry-pi-kit">The Popfizz Raspberry Pi Kit</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=14373b17a8dd" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/intro-to-physical-computing-with-raspberry-pi-and-python-14373b17a8dd">Intro to Physical Computing with Raspberry Pi and Python</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[What Jacqueline achieved in a 1-day coding workshop]]></title>
            <link>https://medium.com/popfizzcs/what-jacqueline-achieved-in-a-1-day-coding-workshop-868a0b64f911?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/868a0b64f911</guid>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[threejs]]></category>
            <category><![CDATA[education]]></category>
            <category><![CDATA[coding]]></category>
            <category><![CDATA[javascript]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Tue, 02 Apr 2019 04:54:11 GMT</pubDate>
            <atom:updated>2019-04-02T04:54:11.099Z</atom:updated>
            <content:encoded><![CDATA[<p>What can we expect students to learn from a 1-day workshop? Well, ask Jacqueline, a shy 8th-grade girl from East Bay with no prior experience in programming. She would tell you that she used HTML, CSS, Javascript, and Three.js to create her own abstract snowman. Jacqueline would also tell you that she now understands variables, functions, and loops and can code them in Javascript.</p><p>On March 30th, 2019, <a href="https://chicktech.org/">ChickTech</a>, a non-profit organization advocating women in tech, hosted a free coding workshop titled ‘Bring Art to Life through 3D Optics’ for middle and high school girls in partnership with Popfizz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/810/1*QUEuBw-nXsisxTmhvREzsg.jpeg" /></figure><p>The workshop was divided into three parts. For the first part, the students created a simple website using HTML and CSS. Then in part two, they learned to manipulate HTML elements using Javascript. Then finally, the students created interactive 3D objects using HTML, CSS, Javascript, and Three.js.</p><p>As the culminating project, students put together geometric shapes in creative ways to create an interactive snowman.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/638/1*56yWpL-L0_uedqCkwTAV0w.gif" /></figure><h3>Designing the Workshop based on the 4 Ps</h3><p>It was amazing to see Jacqueline and her peers excel in such a short time. Jacqueline wants to continue learning and explore computer science. The girls described the workshop “super fun”, “valuable” and “very helpful.”</p><p>How was this achieved? It all starts with designing the workshop based on the <strong>4P</strong>s described by Mitchel Resnick from Lifelong Kindergarten, MIT. <br>The 4Ps are:</p><p><strong>Projects, Passion, Peers, and Play</strong>.</p><blockquote>By providing young people with opportunities to work on <strong>projects</strong>, based on their <strong>passions</strong>, in collaboration with <strong>peers</strong>, in a <strong>playful</strong> spirit, we can help them prepare for a world where creative thinking is more important than ever before.</blockquote><blockquote>- from “Lifelong Kindergarten: Cultivating Creativity through Projects, Passion, Peers, and Play”</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/638/1*GNkHoSGTfdIv3I2PYB4cjA.gif" /></figure><p>Team Popfizz believes that meaningful learning happens when learners take ownership of their learning. To support this, we will continue to create an environment where teachers and students are able to have an authentic and engaging learning experience.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/750/1*-z8ScA9MHYBtnGwFB7mPmg.jpeg" /><figcaption>Collaborate with Peers. Make learning authentic and playful.</figcaption></figure><ul><li>To experience the workshop online, try out this free course.<br><a href="https://popfizz.io/courses/creating-3d-graphics-using-javascript/individual">https://popfizz.io/courses/creating-3d-graphics-using-javascript/individual</a></li><li>If you are a teacher, enroll in the <a href="https://popfizz.io/courses/creating-3d-graphics-using-javascript/class">classroom version</a> to sign up your students. This way, you can see all of your student work from the learning management side.</li><li>To learn more about the 4Ps, read this <a href="https://learn.media.mit.edu/lcl/resources/readings/chapter6-excerpt.pdf">article</a>.</li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=868a0b64f911" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/what-jacqueline-achieved-in-a-1-day-coding-workshop-868a0b64f911">What Jacqueline achieved in a 1-day coding workshop</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How exams can help students learn — a case for assessment for learning]]></title>
            <link>https://medium.com/popfizzcs/how-exams-can-help-students-learn-a-case-for-assessment-for-learning-1962d2cb88fa?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/1962d2cb88fa</guid>
            <category><![CDATA[online-education]]></category>
            <category><![CDATA[ap-computer-science]]></category>
            <category><![CDATA[education]]></category>
            <category><![CDATA[assessment-for-learning]]></category>
            <category><![CDATA[computer-science-for-all]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Mon, 18 Mar 2019 08:06:33 GMT</pubDate>
            <atom:updated>2019-10-19T02:26:28.692Z</atom:updated>
            <content:encoded><![CDATA[<h3>How exams can help students learn — a case for assessment for learning</h3><p>For many years, “assessment” described an evaluation process that was given at the end of the instructional process which measured the effectiveness of the instructions, held stakeholders accountable, and as a result, helped improve education. However, this assessment <em>of</em> learning has not been able to help all of our students. A large segment of the student population is not able to meet the high standards and ends up feeling hopeless to the point of giving up. In recent years, assessment <em>for</em> learning has been emphasized to address this issue.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/925/1*E9moFz9hp38Yu7Cii-pFUA.jpeg" /><figcaption>Are students learning what we’re teaching?</figcaption></figure><p>How can we use assessment to help students learn? How do we, the educators, know that what we are teaching is what students are learning? What are some of the ways we can use assessment to improve teaching and learning?</p><p>The following two cases demonstrate how assessment for learning can be implemented to serve as a tool for improving student motivation and informing instructions.</p><h3>Case-1: Informing Instructions</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4panI0d82tLpzoLiz04aHA.jpeg" /><figcaption>Dougherty Valley High School, CA</figcaption></figure><p>With a little more than two months left until the AP CS exam, 300 students at Dougherty Valley High School took AP Computer Science A mock exam created by Popfizz Computer Science.</p><p>To simulate the real exam, students were given one hour and thirty minutes to go through a paper version of our 40 multiple choice question online exam. After the exam, a comprehensive report was created to help guide what to do as a next step.</p><p>The AP Computer Science teacher Albert Kim, a veteran teacher, and a former financial analyst, values data-driven approach in his teaching. Kim mentioned, “Education should be lifting, not filtering. I’ve been analyzing student data for years to make sure that I’m going in the right direction. This is a great resource that helps me get a more accurate snapshot of where my students are at and where I can take them in the next few months.”</p><p>Even though there were topics left to be covered, Kim found that the exam being introduced at this time had created a priming effect. It sparked curiosity in his students for what was to come. Kim mentioned, “Students had to try out questions that they haven’t learned yet. They had to deduce the meaning of unfamiliar code based on existing knowledge. Some of them came to me after the exam to let me know how they approached those questions. It primed them for the upcoming topics.”</p><p>“It was great that Popfizz worked closely with us to customize the process to fit our needs. I would gladly recommend it to other teachers who are looking for testing resources,” he added. Kim plans to administer the mock exams regularly so that he can gather longitudinal data to further improve and calibrate his teaching.</p><ul><li>School Profile: Dougherty Valley High School</li><li>Type: Public</li><li>State: California</li><li>District: San Ramon Valley Unified School District</li><li>Number of Students: 2,998</li><li>Average graduation rate: 98%</li></ul><h3>Case 2 — Improving Feedback</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*3E3lkgBef_iO9y8XgohqFw.png" /><figcaption>Asia Pacific International School</figcaption></figure><p>AP CS Principles teacher Lee Jones is a computer science teacher at Asia Pacific International School located in Seoul, Korea. Lee who formerly taught chemistry is now the go-to-teacher at his campus for all computer science related topics as he teaches AP Computer Science A Java, AP Computer Science Principles, robotics and runs a maker space. Lee experimented with various tools to help students learn and decided to try the mock exam program for his AP Computer Science Principles course with Popfizz CS. The mock exam was customized to fit the 120 minutes of the block period.</p><p>After the exam was administered, a comprehensive report was provided. The report consists of:</p><ul><li>Overall score distribution</li><li>Score quartile distribution</li><li>Questions students struggle with the most</li><li>Concepts students struggle with the most</li><li>Recommendations for the next steps</li><li>Answer solutions</li></ul><p>Lee explained why he decided to run the mock exam program. “APIS’ approach to student learning is project-based learning. I wanted to learn how their experience building projects translate to AP CS Principles exam skills and find out what areas needed improvement.”</p><p>He added, “The report was the most valuable part of the program. The recommendations given are practical and actionable. I plan to work on them next week.”</p><p>Lee is currently pursuing a Doctorate degree in education and had much experience in implementing tools and processes for formative assessments. “I see a great value in this. Students need descriptive feedback so they can improve. Popfizz CS does a good job of providing this for both the teacher and the students. I plan to administer these exams every semester.”</p><ul><li>School Profile: Asia Pacific International School</li><li>Type: Private, non-profit</li><li>State: Seoul, Hawaii</li><li>Number of Students: 350</li><li>Average graduation rate: 100%</li></ul><p>…</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/530/1*vE_lU7AgbY92uMBBzFf34w.png" /></figure><p>Creating tools for AFL takes time and resources. Not all classes have the luxury to develop this on their own. <a href="http://popfizz.io/">Popfizz Computer Science</a> values assessment for learning(AFL) and designed the learning environment to accommodate the approach. All student work is auto-graded, tracked in real time and customized feedback for improvement is made available at every step. Lab exercises, quizzes, and exams are provided so that the teachers can use them for both summative and formative assessment purposes. On top of that, a customized mock exam program is offered to select schools interested in working with us to help improve teaching and learning.</p><p><em>For more information on mock exam administration and reporting services, get in touch with us here: </em><a href="https://popfizz.io/contact">https://popfizz.io/contact</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1962d2cb88fa" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/how-exams-can-help-students-learn-a-case-for-assessment-for-learning-1962d2cb88fa">How exams can help students learn — a case for assessment for learning</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Expert Teacher Highlight — Anita Rathi]]></title>
            <link>https://medium.com/popfizzcs/expert-teacher-highlight-anita-rathi-315b34294cbf?source=rss-d478a4d9f88b------2</link>
            <guid isPermaLink="false">https://medium.com/p/315b34294cbf</guid>
            <category><![CDATA[education]]></category>
            <category><![CDATA[ap-cs-principles]]></category>
            <category><![CDATA[computer-science]]></category>
            <category><![CDATA[high-school-teachers]]></category>
            <category><![CDATA[learn-to-code]]></category>
            <dc:creator><![CDATA[Popfizz Computer Science]]></dc:creator>
            <pubDate>Mon, 11 Mar 2019 22:12:20 GMT</pubDate>
            <atom:updated>2019-03-11T22:21:24.165Z</atom:updated>
            <content:encoded><![CDATA[<h3><strong>Expert Teacher Highlight — Anita Rathi</strong></h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*Zd4K_w51276AcqKDHTl2zQ.png" /></figure><p>Anita Rathi has taught computer science for almost 20 years at high school and college level. However, building this career was not an easy. She overcame many cultural barriers that nearly prevented her from pursuing her dream of teaching computer science. Mrs. Rathi is currently teaching full time at Stanford University’s Online High School and at City College of San Francisco, and University of San Francisco as an adjunct professor. Mrs. Rathi has created the AP Computer Science Principles course for Popfizz CS.</p><p><strong><em>Q. How did you get into computer science?</em></strong></p><p>I grew up in a culture where career in technology was not fit for girls. My father wanted me to major in science or biology and become a teacher. He was very determined. However, since 11th grade in high school, I’ve had my mind set on pursuing computer science (CS) and was very adamant about it. I really enjoyed solving problems using code and I was very good at it. The only thing I wanted to do then was to get into college and major in CS. Doing well in computer science course was not enough to convince my parents. So as my desperate attempt to persuade my parents, I even tried failing other subjects hoping that they’ll rethink about what they want for me. After high school, my parents didn’t let me join college because I was going to major in computer science. It was a difficult period but, in the end, they gave in. From then on, nothing could stop me. I pursued my Bachelor’s and Master’s degree in computer science.</p><p><strong><em>Q. What languages are you fluent in?</em></strong></p><p>C++, C, Java and Python. And of course, English and Hindi (laugh).</p><p><strong><em>Q. What do you think really helps your students to persevere when met with difficult challenges in learning?</em></strong></p><p>Connecting with the students really matters. Making the learning environment feel comfortable and safe is also very important. It helps them ask questions without feeling embarrassed or ashamed. Also, it is difficult to address the various kinds of issues and bugs that they encounter, so pointing them to the right resources to get help is also very important.</p><p>That is why I developed the CS Principles course. I made sure that students can get plenty of exercises to hone their skills without getting worried about making mistakes. Also, I get to see where the students struggle and provide individualized feedback and the help they need.</p><p><strong><em>Q. Do you see any gender difference in learning?</em></strong></p><p>No. However, sometimes girls seem to ask less questions. It is important to make them feel safe and not embarrassed. An online course is well suited to support this environment. More women need to be in tech and it has to start at the schools.</p><p><strong><em>Q. The AP Computer Science exam is taking place soon. Do you have any tips on how students can improve their scores?</em></strong></p><p>I believe in learning by doing. Practice at least 10–20 multiple choice questions every week. For those of the students taking AP CS-A exam, make sure to practice the free response questions by writing the answer on a paper and checking the answer by actually running the code.</p><p>You’ll also find lots of helpful questions at the Popfizz Computer Science courses.</p><p><strong><em>Q. Can you describe the AP Computer Science Principles course you’ve developed?</em></strong></p><p>It is a year-long curriculum which is designed to be used with other programs. For example, you can combine this course with Mobile CSP, Scratch, Python projects, web development and other programs. The course focuses on the seven big ideas and the end-of-year exam. There are plenty of AP style exercise questions and explanations to help students familiarize with the exam. Also, there is a printable mock exam to simulate the real exam. Administer it before the May exam and it’ll help lower exam anxiety and improve test taking skills.</p><p><strong><em>Q. Any last comments?</em></strong></p><p>I’ve taught CS for over 20 years now. The demographics of students enrolled are changing very slowly. I do want to see more female and minority students pursue degrees in computer science. I would be more than happy to contribute to this cause.</p><p>Learn more about Popfizz CS AP Computer Science Principles course here:<br><a href="https://popfizz.io/">https://popfizz.io/</a></p><p>Request teacher access and get free resources:<br><a href="https://popfizz.io/teachers/access-request">https://popfizz.io/teachers/access-request</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=315b34294cbf" width="1" height="1" alt=""><hr><p><a href="https://medium.com/popfizzcs/expert-teacher-highlight-anita-rathi-315b34294cbf">Expert Teacher Highlight — Anita Rathi</a> was originally published in <a href="https://medium.com/popfizzcs">Popfizz CS</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>