Tuesday, May 22, 2012

Coding Club - Elementary And Middle School Students Learning to Code

Coding is a raw material, it is like, wood, paper, oil, iron, water or wheat. It is a green resource, and it supply is potentially limitless. Just as resources and raw material can be used to make anything, coding can be used to create anything too.

Learning to code, by definition, is an example of applying what you’ve learned. To code and create is the ultimate assessment.  I believe a good part of the future belongs to those who know how to code. I was listening to a presentation online by @swissmiss, Tina Roth Eisenberg,  at the TYPO conference in the in San Francisco, and she shared a quote from James Murphy, former frontman for LCD Soundsystem, “The best way to complain is to make things.” I could not agree more.

When I refer to creating code, I simply don’t mean knowing the ins and outs of some obscure programming language, or sitting in front of a computer writing lines of code, hour after hour. No, what I’m referring to is seeing a need, or recognizing a problem, and creatively constructing a possible solution or answer. To code is to make with purpose, whether that purpose is addressing world hunger, or to entertain. Purpose is the real “mother of invention” not necessity. We all need many things, but need is based on consumption. Purpose is based on action.

With that in mind, I’d like to share my experience with a group of 5th, 6th, 7th and 8th graders, approximately 20 in total and our after school Coding Club adventure. My purpose over the five weeks that we met was to evaluate the potential for our technology teachers to begin incorporating some introductory programming, or coding concepts.  I had two teachers with me in the club a fifth grade teacher and the middle school technology teacher. The group consisted of girls and boys from one of our elementary schools and from one of our middle schools. I think it was noteworthy that the elementary students consisted of both girls and boys, while at the middle school it was all boys. I think this fact alone goes to show we need to do a better job as educators promoting technology skills with our girls.

We met five times, after school, for about an hour, once a week. This was relatively a short amount of time, but looking at the current full curriculum, we realize that incorporating new concepts into the curriculum initially would take some time. Time, a resource in today’s age of Common Core standards and high stakes testing , is very limited. My ideal plan for the future would be once students have mastered some essential concepts, and know how to address their questions on their own, that the coding part would be incorporated into existing Language Arts, Science and Mathematics, Visual Arts, etc. curriculum. (Obviously I have high standards and expectations of our great teachers, and this would be no simple task.)
 

The first meeting started with an explanation of the programming application’s tools. We used this first meeting to discuss concepts such as the fact that objects make up a user interface and explained that when developing apps everything is event driven. One strategy that we utilized was to create screencast videos presenting the concepts that we were focusing on for that day. However, each screencast purposely demonstrated much more than the targeted concepts. We purposely sped up the playback of the video to accommodate the additional concepts with the hope that students could go back a review, stop the video at places of interest, and for those that were ready, learn those concepts on their own.


We quickly proceeded to demonstrate some very basic animation concepts, similar to what you may have learned in your Logo introductory computer class years ago. In our examples, students learned how to import an image and animate the image across their screen. They also learned about object properties and how those properties can be adjusted, on the fly, by using code.

In latter meetings, students learned about concepts such as screen coordinates, variables, functions such as the random() function, and repeat/loop structures. These concepts were all demonstrated and explored in projects that the students could open, tinker with, change, and modify. In addition, the mathematics concepts were pointed out that were embedded into the coding examples.

We knew we wanted to use a tool with students that would allow us to essentially, eat our own dog food, so to speak. We wanted to create curriculum for the students that they could easily get into, pick apart, and see how it worked, how it was created. Imagine if you had a language arts teacher who was creating curriculum that taught a language arts standard through a little application that could then be pulled apart and recreated by the student ad infinitum. The tool we were using allowed us to create projects, upload them to our free DropBox public folder, and then allow students to type a basic URL for that project in a field in the development tool, the message box. That development tool would download and instantly open the curriculum project. It was a great strategy for quickly sharing concepts via working little applications. 


There are many applications that teachers could use to share the fundamental concepts of coding and programming. Scratch, GoogleBlocky, Alice, Squeak to name just a few. These all do a fantastic job of demonstrating common coding procedures.

We elected to use LiveCode from RunRev for some of the reasons explained above. Though not free, LiveCode is a professional level development tool that runs on many platforms Windows, Macintosh, Linux and compiles projects into applications that run on Windows, Macintosh, Linux, iOS and Andriod platforms. LiveCode gives us the flexibility to design curriculum for wide variety of student levels, from elementary, secondary, post secondary/adult learners. RunRev provides educational pricing to educational institutions and students. You can get more information at their web site, www.runrev.com.

Overall the students and teachers had a great experience. By the last two meetings, after the students had some fundamentals under their belt, they began to explore. Some students enjoyed downloading the many example projects on the RunRev web site created by professional developers, others started creating projects such as “choose your own story” where they coded narratives to their stories where the user drove the narrative. Still others downloaded tutorials on their own and created projects such as calculators, which they then compiled into standalone applications.

Overall I was very impressed with what the students were able to accomplish in such a short amount of time. They were enthusiastic and comprehended concepts much faster that I had originally thought they would. Our Coding Club was a great proof of concept for the purpose of incorporating coding/programming concepts into our elementary and middle school curriculums. If you will be going to ISTE this year in San Diego at the end of June, be sure to swing by my poster session on Wednesday morning and say hi. I’ll be sharing more about LiveCode and how we’ve been using it in my district.

Friday, May 18, 2012

Impending Mountain of Debt - Post Secondary Education

* Disclaimer: My son is just finishing his junior year in high school.

Untitled
 I was just reading Thomas Friedman’s column titled, Come the Revolution . He writes about how professor Andrew Ng, who normally teaches to about 400 students during a semester, last  semester taught 100,000 students. The article is mainly focusing on the successful introduction of the Coursera.org project. Coursera is an online learning management system that started with 40 courses taught by professors from Standford, Princeton, Michigan and the University of Pennsylvania.

Upon reflecting on the article, a part of me keeps asking the question, “And why doesn’t Andrew Ng work for himself, become self employed? At 100,000 students a semester, even if he charged $1, that’s not bad income for a semester of work. Then again, maybe this level of professor make much more than $100,000 a semester?  

I do realize the value of of a big name university behind a professor. But in a day where the information about those select professors, their blogs, research projects, commercial endeavors, successes and failures, etc.  is available at your fingertips, does “storing” all those professors and titles under a ivy school university label bring them any more value in today’s world? I also realize the value of an institution to combine resources ($$$) in a way that an individual can not. However, part of me believes this is still a valid argument in certain situations.

It seems to me that it would be very easy to organize a collection of professionals, from all over the world, with established credentials based on the artifacts of their digital lives, into a DIY post secondary education. Individual learners could select their program and professor based on their interests and the strength of the professors credentials, and not on the restrictions of an overarching institution and the programs available only within them. Professors would win if students enrolled in decent quantities and students would win by lowering the costs for post secondary education.

This idea needs a global standardization for evaluating the credentials of a professor/expert, and process for evaluating the components that would make up a useful student program, sort of an agreed upon outline of the essential skills needed within a specific program. Those essential skills could be vetted in a “Wikipedia” like environment, with additions, subtractions, and corrections contributed by the specific program’s community.

Taken one step further, or earlier, I should say. I could see how similar system could possibly help students at earlier levels of their formal education. It would help them not so much by creating an online school for them to attend, but giving them the ability to create their own school!

I should also note, that what I’m describing is already, to a degree, being done by the people who are reading this post. However, it is done in an informal manner without established expectations. As the impending mountain of debt approaches with my son graduating next year and deciding on where to attend college, I can’t but help but entertain the idea of economically sound post secondary education.