Great Codesters Activities for Hour of Code

Computer Science Education Week is always one of our favorite times of year at Codesters. It’s wonderful to see computer science education take the spotlight and to see showcased all the great work teachers and schools are doing!

One of the signature activities during Computer Science Education Week is Hour of Code. Hour of Code is an awareness activity, usually lasting a period or two, in which students are exposed to coding and computer science, often for the first time. It’s been instrumental to raising the profile of computer science in school communities. Codesters offers a variety of activities for teacher and schools to use in their classrooms. These include:

  • Dance Moves – Design your own dance routine and program a sprite to perform it!
  • Turtle Drawing – Guide the turtle out of a maze and create spiral art!
  • Winter Greetings – Create your own greeting card to celebrate winter!

We’re also proud to announce that Codesters has also been added to the curriculum list of Code.org, one of the key organizations behind the Hour of Code nationwide. We have a lot of respect for the amazing advocacy work Code.org has done and are excited to be included on their list.

Codesters is on Donors Choose!

School funding is often far too tight, even for programs that teach invaluable 21st century skills like coding and computer science. Donors Choose is an innovative platform that addresses critical gaps in funding by enabling teachers and administrators to start crowdfunding campaigns to raise money for worthwhile programs without having to go through the school budget rigmarole.

Codesters always strives to be affordable – starting at just $10 per student – and now teachers can bring coding to their classrooms with the help of Donors Choose. And, for the first 20 Donors Choose projects that fundraise for a classroom set of Codesters curriculum, Codesters will match dollar-for-dollar any funds that are raised. A classroom set of 30 licenses to Intro to Coding in Python part 1 is $250 on Donors Choose, which means that the first 20 teachers who raise $125 can start teaching coding right away.

We are proud to be on Donors Choose, a platform that has been filling in the budgetary gaps for educators for years. Learn more about Donors Choose, or get started with your Codesters Donors Choose project, here. (Note: when you are creating your Donors Choose project you will find Codesters in the AKJ Education catalog.)

And please support Donors Choose projects to bring Codesters to schools by going to our Donors Choose Giving Page.

Also, check out our great Codesters’ activities for Hour of Code, happening in schools and homes globally during Computer Science Week December 5-11, 2016.

How I Made the Leap to Teaching Python with my GWC Club

I love teaching girls to code. In 2014, I started a local Girls Who Code Club chapter in my hometown and have been a volunteer instructor ever since. It has been so rewarding to see my students’ “light bulb” moments and the pride in their eyes when they share the projects they have created with code.

The majority of my students come to our club with no coding experience and little idea of what computer science involves. This, unfortunately, is typical for most middle and high school students, girls in particular. I started the club with no previous experience working with high school girls and only limited education experience. It was intimidating. I was more than a little scared of high schoolers and how the club would turn out.

So for me as well as my girls, it was the beginning of a journey together into the unknown. To my great relief, the first few classes went great. The girls were genuinely excited to be learning to code. For a while, classes went along fairly smoothly — a credit to the great organization of Girls Who Code. Soon enough though, an issue surfaced.

Eight weeks into our Scratch programming curriculum, our chapter’s student ambassador asked, “When are we going to write real code?”

“What? We are writing code!” I responded.

“Blocks are for kids!” another girl exclaimed.

Why did they think this?    

The high school girls in my chapter had recently volunteered at a Scratch programming workshop for elementary school girls. As I asked more about what they meant, it came out that seeing third and fourth graders learning block programming framed Scratch as something just for kids in their minds. They also had friends — all boys —  writing text-based programs. The girls wanted to share their projects with these friends, but they wanted to share “real code.”

Scratch is an incredible platform. I reiterated to them that the coding they were doing in Scratch with blocks was every bit as “real” as the coding their other friends were doing with lines of text. But the more I insisted this was the case, the more they pushed back. I was worried many of the girls would stop coming if I didn’t come up with solution. My girls were unrelenting.

Just in time, though, Girls Who Code came to the rescue! We were invited to pilot Codesters, a learn-to-code Python platform. My girls were so excited! Not only did they love finally getting to write “real” (i.e. text based) code, but they loved learning how Python was used in the real world.

They also loved the block-like interface Codesters includes. Known as the “Drag-to-Type” toolkit, it bridges the gap from blocks to the rigor of Python. With the toolkit, the girls were able to get going right way and write a program on the first day. From there, we — And I really mean we; I was learning along with them! — gradually learned Python syntax and debugging as part of each lesson.

Codesters combines self-directed learning with teacher driven lessons. As a Codesters instructor, this blended learning environment meant my students could learn foundational coding skills regardless of my own coding experience. If one of my students missed a class, she could catch up on her own. Fast learners could also be challenged with more complex and creative projects without forcing other students to skip ahead.

The Codesters teacher dashboard gave me the ability to monitor lesson progress, too. I could see immediately if a student was struggling and offer guidance before they became too lost. Each of my twenty girls was learning to code at the optimum pace for herself. My job became simply to support however they each learned best. The dashboard freed me to focus more on helping them with their projects, celebrating their accomplishments, and building lasting mentorships with each of them. Our club was transformed!

As I’d soon learn, our club wasn’t the only one that saw the power of Codesters. Codesters is now a curriculum provider for over 400 GWC Clubs across the country and I couldn’t be happier about that! In fact, I am so passionate about the Codesters solution that I accepted an offer to become their School Relationship Manager in January. In this role, I work with schools to bring Python education to students in 5th to 10th grades. It is absolutely my dream job!

In addition to my 20 girls, I can now empower any district, school, or teacher with the Codesters solution. As the School Relationship Manager, I get to see the same kind of “light bulb” moments I saw in my girls’ eyes in teachers’ eyes now, too, and for every new Codesters teacher, there are another 30-150+ students who will get to proudly share what they create with code! Bringing coding into the school day also means that all students will have the opportunity to learn to code, not just those that self select for a club.

We are starting to see more of a commitment to teaching coding at the local, state, and national levels. Arkansas’s commitment to teaching text-based coding to all seventh and eighth grade students by the 2017 – 2018 school year is just one example. New York City, Chicago, San Francisco, and other cities have made varying commitments as well. The question before us now is, “How?”

I believe Codesters is already helping to answer this crucial question.

If you’d like see what my girls and I especially love about Codesters, including why it’s the perfect tool to bring coding into your school classroom, visit www.codesters.com. Create a free teacher account and I will get you started with a free, three-lesson pilot for you and your students.

I look forward to connecting, and empowering you to teach code!

All the best,

Kimberly Sauter

Kimberly Sauter
School Relationship Manager
kimberly@codesters.com

Codesters at PyGotham 2016

Three members of the Codesters team presented at PyGotham, an NYC-based conference for Python developers. In our talk, we discussed the process we used to develop a simplified API tool for younger students just learning to code. We focused on two questions that drive our thinking about developing tools for students:

1. What is the right way to teach younger students to code, particularly in professional text-based languages?  

2. Should we modify CS 101 courses to be accessible to young learners or should we do something else?

At Codesters we believe that students can and should move from block-based coding to text-based coding around middle school (fifth or sixth grade). However, this doesn’t mean that we should teach young students to code the same way we teach high school or college students, and teaching differently requires different tools. For example, while we believe Python is the best language for getting students started with text programming, we teach Python in two ways that may be unfamiliar to a Python veteran. IMG_20160716_153518

First, we teach Python in an online learning environment, instead of teaching them to use an IDE and run their programs from the command line. We do this because we believe an online professional programming language is made more accessible when taught using tools specifically designed for learning.

Second, we teach standard Python, but we sometimes modify or extend the Python libraries to be effective for teaching a sixth grade classroom with 20 or 30 students. Our team has created a development process for determining  when the Python standard library should be taught and when it is more appropriate to create simplified Python modules. This process involves close collaboration between our curriculum and development teams. This way, we can focus on writing clear curriculums that work for each grade level, while still staying true to teaching the fundamentals of Python and computer science.

A good example of this is the simplified API tool we developed for Codesters. This tool allows students to import data from any publicly shared Google Sheet into their Codesters programs with a few simple lines of code. It also imports the data as a list of strings or integers, so students don’t need to have a deep understanding of objects or data types. It’s capabilities open up a door for newer students – even sixth graders just learning to code – to easily bring data into their Python programs, making their projects more interesting and connected to the world.

We were proud to be part of PyGotham and thrilled to see CS education gaining steam. It’s notable presence as a topic at a conference for professional developers was heartening. Most exciting, though, was seeing education so prominently featured as the topic of the closing keynote: Empathy & Teaching by Katie Cunningham. We also, of course, enjoyed other excellent education-themed talks including Young Coders by Barbara Shaurette of letslearnpython.com and Creating a Culture of Computation by Evan Misshula of CUNY – Queens college.

Take a look at the slides from our talk, Opening the Magic Box, and keep an eye out for the forthcoming video. We look forward to playing more of a role in PyGotham and the Python community for years to come.

Coding: The Everlasting Gobstopper

Everlasting GobstopperWilly Wonka’s Everlasting Gobstopper: The candy that changed color and flavor but never got any smaller. A miracle for kids everywhere! The Everlasting Gobstopper promised to revolutionize the world for kids: An accomplishment never to be matched again! …Until the arrival of computer coding in schools.

“OK, OK. We get it,” you nod. You’ve heard the hype about coding in schools. Tech luminaries extol it endlessly, The White House is pushing initiatives for it, startups with cutesy names keep sending you emails about it (#sorrynotsorry), and even The Simpsons recently poked fun at the movement. Not since Wonka’s Everlasting Gobstopper have we heard so much hullabaloo. We are at peak hullabaloo.

But, why the hullabaloo? What exactly is coding and why does it belong in our schools?

At face value, coding is the skill needed for programming computers, but really it’s much more than that. It requires learning a new form of grammar. It’s used to solve problems in a modern way, by completing projects and working as a team. It provides the compass for exploring math and science much in the same way the written word unlocks the truths of history. Given the pervasiveness of computers in the sciences now, you might say that coding is “the language of science exploration”.

One reason the debate over whether to bring coding into schools gets confusing, though, is that coding is both a skill and a literacy. Coding is largely still seen more simply as a skill used directly by professionals in STEM fields, but coding literacy is becoming increasingly crucial for all professions as computers rapidly encroach into fields outside of the sciences. That is to say, adults in nearly any line of work will need to understand how to write and understand a little code from time to time. The other day my car mechanic told me that almost everything he does now involves computers, so he’s learning to write testing macros in code. At my doctor’s office she and her staff write code to manage medical records. The examples of coding’s reach are endless, and growing.

What’s not to like about all the hoopla when you think about it that way, right?!

Well, some people are still not convinced coding needs to be taught in schools as more than an elective. The other camp (us) is making a ruckus because coding has for too long been considered just a skill and thus kept in after-school clubs and camps for the students most interested in it. But, remember, coding is not just a skill; it’s also a literacy. It is the language of science exploration. Relegation to after-school hours does students a real disservice. The modern world demands coding literacy; therefore, coding belongs in school. It’s essential that we prepare our younger generations to speak the language of their future.

So that’s it. That’s the whole brouhaha in a nutshell!

Guess it turns out coding is more than the next Everlasting Gobstopper revolution, and thank goodness! Things ended quite badly for the children who attempted to steal one for themselves (and for Slugworth). On the contrary, coding is meant to be shared with bright young minds in schools the whole world over.


Ready to start coding at your school? Get going with Codesters today.

How to get students from Scratch to Python.

“My students have been learning to code on Scratch, but now they want to move on to the next thing: text-based coding. We’re trying to get them learning Python, but they’re struggling.”

At Codesters, we often hear quotes like this from teachers we meet at conferences such as ISTE and CSTA. I hate to hear that kids are struggling to learn to code.

Transitioning from Scratch to Python might appear daunting at first, but it doesn’t have to be a painful experience. In fact, a big reason we built Codesters was to make the transition from block-based programing to text-based programming intuitive and straightforward. Codesters is as easy as Scratch, except with Python. Here are a few common challenges students and teachers face when advancing beyond Scratch and how we tackled each.

Problem 1: Scratch is Fun. Text-based coding can feel boring by comparison.

The reason students sometimes struggle to learn text-based languages like Python is that they don’t have a coding environment that makes learning Python easy and fun in the same way Scratch does. So when we built Codesters it was important to create an environment that allowed kids the ability to view, edit, and work with code in text form, while also employing a similar style of engagement, ease-of-use, and ability to rapidly create using familiar drag-and-drop.

Problem 2: Block-based platforms provide kids a constrained set of contextual options. Text-based programming removes these training wheels. 

When students code in text-based languages they can be overwhelmed by the syntax and what to type into the editor. Students working in Scratch by comparison have a defined set of choices in a set of menu items that well organize the “syntax” options. Codesters blends the best of both worlds. Our unique Drag-to-Text Toolkit allows students toCodesters Python Learning Environment drag and modify the code, while preserving the ability for students to write text-based code when they are ready (Click here to see a short video of how our toolkit works). We have found that this 3-step process – drag in code blocks; modify variables and operators; then type and edit directly in text – is the natural way for students to learn coding syntax.

Problem 3: Scratch lets kids make visually interesting projects they can share with classmates immediately. In text-based languages this is often harder than it need be. 

Part of the fun of coding is showing off what you built, and that’s just as true for kids as it is for adults. A transition from block languages like Scratch must take that ease of sharing into account. This is why we built the “Create” assignment at the end of our structured classroom lessons – a feature teachers tell us again and again they love. These “Create” activities allow students to share projects with others from the get-go. And it’s all done in Python, with direct access to the text-based code.

More than 50,000 students have started learning Python on Codesters. We’ve learned that it’s possible to give students and educators both the ease-of-use and immediate gratification of block-based languages while providing direct instruction in an industrial-grade, widely-used, programming language – Python.

We believe the Codesters learning platform to be the most engaging and effective way for students to learn coding generally and Python specifically. It’s great for both students coming from a block-based background as well as those coding for the first time. If you want to try out Codesters, go to www.codesters.com and click “SIGN UP FOR FREE”. And if you’re headed to CSTA, we hope you’ll stop by and check out our presentation, “Integrating Coding into Math and Science Lessons for Grades 5-9”, on Monday June 11 from 8:30 AM to 11:30 AM.

If498dfd6715eb9dd4ebe96422974b7d8d you have any questions about how to use Codesters to teach your students Python, send me an email. I’m at gordon(at)codesters.com.

Why do I need to learn this?

If you are a parent or an educator, you know this question is coming sooner or later, in all its maddening simplicity: why do I need to learn this? Kids should be asking this question. Adults too. I’m pretty sure none of us got a great answer when as teenagers we asked why we needed to learn trigonometry – I’m still waiting for the answer to that one. Let’s fix that with coding. Why do we need to learn to code?

At Codesters we believe that today’s students need to learn to code because a new world awaits them. The probability that today’s student will find herself needing to understand coding in multiple domains is high, as high as it has ever been. A biologist needs to code because she is using bioinformatics to compare gene sequences. A climate scientist researching melting glaciers needs to code to build her data into a climate change model. A graphic designer needs code to make her designs come to life on the Internet. And a linguistics researcher uses code to compare ancient texts and model how language changes over time. We aren’t just talking about software engineering here, though that is of course a growing field. We are talking about coding as a literacy and tool that is becoming ingrained in almost every profession, just as computers themselves can be found in nearly every field.

There are two popular phrases thrown about by those of us working to bring coding into schools: “stop playing games and start making them” & “you could be the next Mark Zuckerberg”. While those slogans are exciting, we find that they don’t go far enough to address the interests for the majority of our students. What percentage of students will be motivated to learn coding by either prospect: video game design or tech entrepreneurship? Perhaps 5-10 percent? Wouldn’t that 5-10 percent find ways to learn coding on their own anyway? We need to provide a compelling answer to the remaining 90 percent.

The most compelling answer is the truth. Coding will be an increasingly important part of a majority of professions in the near future, including the fields they are already considering for their own futures. If we explain to our students how vast coding’s reach will be for them, and how exciting it is to solve problems using the power of code, our students will approach learning to code in school knowing why it’s important (something we never had in trigonometry class).

My advice is to be to be sure you can tell your students how coding will play a critical role in whatever professions they want to pursue, so they know why they should be excited to learn to code.

I will be presenting at a panel on Coding in the Math Classroom at this year’s ISTE conference in Denver on June 27th. If you are at ISTE, stop be the STEM Playground on Monday morning at 8:50 AM and say hi!

– Gordon

Coding’s Ratatouille Moment

By Gordon Smith, CEO and Co-Founder, and David Oblath, Co-Founder, Codesters

Central to the mission and work of Codesters is our shared vision that all children should get the opportunity to learn computer science. Computer science positively contributes to the development of crucial skills such as teamwork, problem solving, and logic. Coding itself is essential to numerous fields of study in science and beyond.

A crucial corollary to this vision is our core belief that anyone – any child – has the ability for computer science. For too long computer science was seen as only appropriate for “advanced” students, especially “advanced” students in more privileged school settings. As we have seen at Codesters, there are no demographic markers – not race, nor gender, nor class, that correlate with a child’s ability to code. Children with IEPs, with learning delays, or with chronic classroom behavior issues have also proven to excel at coding.

download
Ratatouille Picture Courtesy Pixar / Disney

That anyone can code – that we should never assume a child “can’t” – brings to mind a movie our kids love, the 2007 Disney Pixar film Ratatouille. The motto of the famed Chef Gusteau, that “anyone can cook”, looms large to both aspiring chef Linguini and his pal and star of the movie, the rat Remy. By the end of Ratatouille, Linguini and Remy achieve great things in their chosen profession, with the latter being called “nothing less than the finest chef in France.”

We both love this about Ratatouille – the constant reminder and reinforcement that “anyone can cook.” The next great chef could come from anywhere; indeed, anyone with passion, even a rat like Remy, can create the next great meal. Ratatouille teaches us that we can never know who will emerge as the next superstar in any given field.

As the school year winds down and the next school year appears on the horizon, the CS-in-schools movement has reached its Ratatouille moment. Where are the solutions to the next set of complex problems going to come from? Who will develop the next great software platform? Just as we can never know who the next great cook will be, so too may the next great programmer come from any community, anywhere.

Will every kid who is exposed to computer science become a professional computer scientist, paid to write code? Probably not. But just as everyone needs to know how to cook, even a little, so too does everyone, and especially every child, need that taste of computer science (and hopefully a good bit more) in order to address the challenges we all face. From the pool of coding-literate young adults, superstars will emerge where they otherwise might never have.

So as the debate continues as to whether everyone, including every student, should learn to code, and just as the US Computer Education community continues to go back and forth on whether US schools are teaching kids how to code the right way, at Codesters we remain resolute that, like cooking, coding is something we’re all capable of doing. This is what animates our work and drives our efforts to reach more schools, districts, and teachers. To paraphrase Chef Gusteau: “anyone can code”.

Codesters Team presented at Teachers College EdLabs

Edlab presentation
https://vialogues.com/vialogues/play/24723

On Wednesday, September 16th, Gordon Smith and the Codesters team presented at Teachers College EdLabs.

Our talk elicited many interesting comments, such as one from user jagnitti (@02:59): With that logic, it’s also important for all adults to learn coding, too, or else get squeezed out of the job market by these young whippersnappers!

Other users, such as tzaffi (@05:30) philosophized: In principle, anything you can do with a regular programming language can be done with a block language as well. But….since in industry, standard text based programming is still standard, it makes sense to expose students to both kinds of programming. 

Have a look at the vialogue and feel free to drop us a comment.

Give Codesters a try and sign up for free at www.Codesters.com.

Coding in Schools is Eating Education

Today Mayor de Blasio declared that every school in NYC will teach coding by 2025. The $81 million initiative will enable all of NYC’s 1.1 million students to have the opportunity to participate in our modern society and economy. This announcement is one more step in a clearly emerging trend in education – a trend that makes me optimistic about the future of NYC and the nation. Soon every kid will learn to code in school, and this fact is going to change everything about school, education, and the way kids learn.
Put simply, coding in schools is eating education. 
Famed venture capitalist Marc Andreesen said, “software is eating the world” by which he meant that software fundamentally changes every business in every industry. The inescapable equation for teaching coding in schools is this: if “software is eating the world” means that every business is becoming a technology business, then every job is becoming a technology job and every school must evolve to teach kids to use technology – particularly coding – to learn, understand, and communicate. Then, once students possess the fundamental literacy of coding, they can use it in any class, any subject, and any grade, to accentuate and accelerate their learning.
Many people equate teaching kids to code with after school clubs making games or Saturday-morning hackathons. That limited conception of coding misses the reality of what learning to code does for kids in school. Coding does the same thing for kids’ learning that software does for companies that build on it – it fundamentally transforms the way they think and work. Coding empowers kids to explore and engage academic topics in ways they could not without it.
Want examples?
SCIENCE: Teach middle school students to code, then in science class have them write a program for DNA translation that decodes a strand of DNA into amino acids to make a protein. They can animate it to show their friends. They can write a function for random mutations to see what happens to the protein.
The active process of creating with code will trump any other learning a school could offer. But first, we must teach every kid to code.
MATH: Don’t have students explore probabilty by rolling dice and recording results manually. Instead, have them write a program for a dice simulator that can roll repeatedly, record results automatically, and display the data. Then math teachers can ask questions about probability of compound events or how results differ with small sample sizes vs. large sample sizes.
When students create the simulator program they learn underlying math. Then the simulator gives them the power to explore the math more deeply through concrete explorations.
HISTORY: Students struggle to memorize the facts, names, and dates in history class. Why not have them create their own Jeopardy-style quiz app with questions and answers. Have the app randomize the questions, mix up answer choices, and automatically tell students if their answers are correct. Then students can quiz their friends with their app. Of course far more learning occurs when the students do the creating than when they are just being quizzed.
ENGLISH: Have students write a script for a play or a TV show as a creative writing assignment. With code that story can be transformed into something animated, visual, and interactive. It can allow other students to “play” the story as a choose-your-own-adventure game. And the creation process greatly deepens the learning.
FOREIGN LANGUAGE: Instead of having students memorize rules for verb conjugation written out on paper, have them code a program that conjugates verbs automatically. They need to build all the logic and rules of conjugation into the program – including any exceptions. And when they are done they will never forget because they created something instead of merely memorizing.
My point with these examples is that none of these are about creating games and none are specifically coding lessons. They are all ways that students with the fundamental digital literacy of coding can improve their learning experience in any class.
“Software is eating the world” means that every business, even those that are not “technology businesses”, must use technology to improve they way they deliver their products and services.
“Coding in schools is eating education” means that in every class, even those that appear to have no connection to technology, coding will be used to empower students to learn in more robust and effective ways – through creation and exploration.
What’s next for coding in schools?
Andreesen said, “People in the U.S. and around the world lack the education and skills required to participate in the great new companies coming out of the software revolution. This is a tragedy since every company I work with is absolutely starved for talent. There’s no way through this problem other than education, and we have a long way to go.”
Yes, we have a long way to go. With this announcement we are finally on our way.
Instead of trying to figure out if we have room in our schools’ schedules for coding, or how we can find time to teach kids to code when they already have so many others subjects and all these tests to take, we must instead begin to see coding as the answer for how we improve learning itself within schools.
Progressive education, the maker movement, constructivism, project-based learning, inquiry-based learning, experiential learning, critical thinking, individualized instruction. If you are interested in any of these paradigms, then providing all students with the digital literacy of coding and the tools to code in school is the key to engaging students and making school a more powerful learning environment.
The movement has been taking off for years, and this is just the latest giant step forward.
Today’s announcement takes place in a New York City where the foundations of a learn-to-code movement have been being built for years. Since being founded in 2013, CSNYC (one of the organizations behind today’s announcement) has reached over 10,000 students in over 100 schools in NYC. Girls Who Code, founded here in NYC in 2012, has already brought coding to 4,000 girls across the country and is aiming for 1 million girls by 2020. The CodeBrooklyn movement from the Brooklyn Borough President’s office is aiming to run an Hour of Code in all 500 Brooklyn schools this fall. Codesters, which I founded in 2014, is in 20 NYC DOE schools and 75 Girls Who Code clubs and will reach over 5,000 students this year. And there are many other organizations like TEALSScriptEdBootstrapScratchEdSEP, and CStuy here in NYC and across the country that are working to make coding in schools a reality.
Today’s announcement is a huge moment. It represents the tipping point in the movement to get coding into schools.
Coding in schools is eating education and I am thrilled to be part of it.