Showing posts with label Alice. Show all posts
Showing posts with label Alice. Show all posts

Wednesday, December 1, 2010

Alice -> Excel in the APCS Principles Pilot

Midterm follow up, but I'm afraid there isn't anything earth shatteringly new to add. As Beth Simon had promised, the (34) questions on the midterm looked very much like the in-class quiz questions. If you have been following the podcasts, then you know exactly what those questions look like. There were exam questions on virtually all the major topics covered in the course.

Having started to tally the types of topic questions, I began to decide that this effort probably wasn't going to help out those of you who are still interested in details about the excellent midterm results. I believe that the varied analyses of the project that will take place after the course concludes may produce more engaging information than if I list out a topic frequency count.

It is more interesting to briefly discuss what happened in the class sessions in which Beth discussed Excel. As mentioned in a previous post, she went to great lengths to make a smooth transition between Alice and Excel, showing the relationships between two seemingly disparate programs. Alice is an animation oriented programming system and Excel is a spreadsheet program, albeit a now quite sophisticated piece of software. However, in working through complex concepts such as relative vs. absolute addressing (often a tricky distinction for learners), Beth demonstrated through example how an Alice exercise (such as a singing group called The Beetles - no that is not a typo, they were insects) had underlying code similar to formulas they could create in Excel. She discussed similarities and differences in concepts such as loops and conditionals. All very creatively.

This type of teaching supports what the learning literature describes as Transfer - the ability of a learner to successfully apply understanding from one learning experience to another and to rapidly learn new related information. Observing the class it appeared that transfer was likely occurring because students asked intelligent and thoughtful questions about the Excel exercises and remained engaged throughout the lectures.

This is also a good time to note that the course has been supporting two other types of well researched learning that I have not specifically referred to previously:  problem based learning and collaborative learning. If you are not familiar with the research in these areas, an excellent read is How People Learn put out by the National Academies Press. It has become a classic and very accessible reference on learning in educational settings. Well worth the read.

Tuesday, November 16, 2010

Alice Expert Steve Cooper Makes a Visit

Last week one of the creators of the Alice program, and one of the authors of the most popular textbook on using Alice, Steve Cooper came to San Diego for a visit. He may have thought he was coming for the nice November weather, however he chose the two days when temperatures soared well over 100F : the outdoor thermometer on my cement (heat reflecting) deck read 50C, and the humidity dove to 2 percent.  Welcome to San Diego Steve!

Currently an Associate Professor in the Computer Science Department at Stanford University, Steve has been very active for years in the computing education community. He also spent two years as a National Science Foundation program officer.

Steve came to San Diego to see for himself how the APCS Principles pilot course here was being implemented. He wanted to visit with Beth Simon (the instructor), with the Teaching Assistants, watch a class, and be in the environment. Steve was impressed by what he saw and heard - he pointed out that it is a challenging environment to teach a large number of students, with no definition of "typical" student. He was excited by the ambitious approach to the class that he has been following in many ways, including through this blog.

Steve and I have known each other for many years so I was able to spend some time with him talking about interdisciplinary computing and how he sees Alice contributing to a wider public understanding of what computing is and can be all about.

Steves describes the philosophy of Alice as ideal for computing students, whether they are majors or taking their one and only course in the field. Originally Alice was targeted at Pre-CS1 at-risk students. As a pedagogical tool it was envisioned as an innovative way to help students develop intuitions about programming concepts through graphic visualization and animation. Since those early years in the mid 1990s, classes using Alice have spread nationwide and now appear in non-majors classes, pre-CS classes and CS1 classes. Formal research studies have examined the effectiveness of the course. Steve has kept on top of these developments and with his colleagues and team have striven to see that the Alice software meets the broadening needs of the user community.

In addition to use within college and university settings, Alice is used with younger students. Alice has been migrating downwards from 12th grade and Steve is very excited that 9th graders (approximately age 14) are now using it. Steve believes that once Alice is being used regularly in middle school (~ age 12-14) then the broad potential of computing will hit the critical age group where students make decisions about courses to take that ultimately direct their college or other career options. Approximately 1500 K-12 (the pre-college years in the US) teachers belong to the "Alice community" and the number is growing. Community members participate in a listserv, receive special announcements and other opportunities.

As an interdisciplinary tool, Steve talks about how Alice is either being integrated into, or plans are in the works to integrate it into, classes in biology, chemistry, physics and mathematics - courses that are ripe for the use of animation and simulation and that increasingly rely upon solid programming skills. Steve was very animated when he discussed his vision of Alice as a cross-disciplinary tool. In STEM (Science, Technology, Engineering, Math) classes, he points out, Alice can be used for specific units within a broader content course. Creating objects and manipulating them will bring topics alive. For example, Steve suggested that the process of how a desert changes over time can be animated. To create such an animation the student would need to use loops, work with moving objects on top of, in to, and around other objects in the desert environment.  Most of the basic intro programming topics would have a place (functions, methods, event handling, conditionals etc). Therefore, as they create these animations or slide shows, students will learn the computational thinking skills that they need to create robust computer code.

It is all about problem solving, says Steve. Developing intuitions for difficult concepts as opposed to relying on surface level tactics. Learning to speak different languages (the language of computing along with the language of different content fields).

Steve continues to work on the development of curricular materials for Alice and is very excited about the broadening use of it across discipline and age. He is particularly enthusiastic about the possible tie-ins between the goals of the new APCS Principles project,  the new APCS Principles AP exam itself and the ability to introduce the exciting world of computing to younger students.

Monday, September 13, 2010

APCS Principles Pilot Course: Designing Meaningful Labs for Humungous Classes

In the ongoing conversation about the APCS Principles course pilot project, today I am thinking about labs. I have been creating away... Lab creation, when a goal is to encourage creativity and exploration while making sure that design and coding content is covered  appropriately, in a given time frame, and in a way that can be assessed  (all of those 750 students....). Labs last two hours and pretty much run 5 days a week, all day. There will be 14 lab sections, with a 40-46 : 4 student - assistant ratio. The "assistants" are 1 graduate Teaching Assistant and 3 undergraduate tutors per lab. Students must attend the lab that they are registered for (no floating) which will help with keeping track of student progress and also with students getting to know their assistants. In a large class, that relationship can prove invaluable and needs to be encouraged. I envision a logistical nightmare if students were able to attend any lab on any given day or week. (Migraine anyone?)

With these kinds of numbers, every little detail has to be taken into consideration when writing the lab. Lab assignments are being designed with the intent that they be completed during the two hours. However, in discussing learning style issues, we are debating the pros and cons of posting the lab assignments in advance - what subtle messages would that send and is that productive or not? Is it fair?.....Does it make life easier or more stressful for the student?.....

Some students will  more readily "run with the ball" than others - a learning style issue rather than an ability issue. So the labs are being designed with two options of equal difficulty. One option will list the program code minimum requirements and let them loose, with a few reminders and suggestions about how to stay on task and not get lost in the technical weeds. The second option will provide a backdrop for the students to work within, and a scenario to use (for example: help a person to escape from a Southern California wildfire). The program code requirements are the same as with Option 1. We are taking great care to make each option be equally difficult/easy. And we want it to be FUN. (another scenario involves having fish swim around neutralizing ocean pollution).

After the very early labs that are fairly structured, the labs tasks will open up and encourage more and more freedom and creativity. The idea here is to support the general Alice philosophical approach of encouraging experimentation and "play" while learning. That makes creating them  both a challenge and fun. If it takes me 4 hours to complete my own lab idea, well then...hmmm. Too difficult. If I find Option 1 easier than Option 2, is that an accurate perception? hmmmmmm How many hints are appropriate and where to place them? hmmmmmmmmmmm.

There will also be an extra credit option for any student who whizzes through the primary part of the lab and has time to spare. The extra credit will put the pedal to the metal so to speak: add in something unusual, new, thought provoking. These exercises will not necessarily be harder in content; sometimes they may be harder in terms of design, or some other factor that we are trying to emphasize.

It will be interesting to see how students react to these two options. We intend to keep track of which labs students choose, if there is any pattern, if our intent for the level of challenge and "fun factor" plays out as intended.

This afternoon I was tasked with taking some time out to think again and more about assessing these labs. So now, I'm off going hmmmmmmmmmm about that. Stay tuned.

Tuesday, September 7, 2010

UCSD APCS Principles Pilot Course: Lectures

Following up on my previous post about the UCSD implementation of the pilot APCS Principles course under Beth Simon, here is an on the ground report into some of our most recent discussions about lecture development, and with that, more background material about the approach the course will take:

Lectures: As I reported, Beth will be delivering interactive clicker based Peer Instruction (she reminds me that I can refer the interested reader to additional information on the use of clickers).  Beth is looking at different ways to integrate societal concerns into her lectures - this is going to be fun and challenging at the same time. You see, ideally, the lectures will include excellent examples of computing applications (among other possibilities) that are being used for good or ill (balance is desired) and that will plug into the course content on a given day. Beth has been doing some digging into previously published material. Another area that we may draw upon is the research I have been doing recently into computing centric, socially beneficial "real world" projects. Alternately, we may look for inspiration to other schools' curricular implementation of projects in "Computers and Society" courses. Or........as you can see, the conversation is just beginning. What is the most fruitful way to smoothly integrate societally interesting (from the students pov) issues into the lecture material?

Speaking of the material, I should mention that our base applications will be Alice for about 2/3 of the term, followed by Excel for approximately the last 1/3 of the term. These applications were chosen after several years worth of meetings (started prior to the APCS Principles project coming into existence) with the divisions who traditionally require this course for their students.  Psychology specifically requested Excel for their majors, and representatives from a wide range of perspectives that represent the freshmen decided that Alice should work nicely for the non computing (so far :)  first-years. Alice, smoothly transitioning into Excel while following the ideals of the APCS Principles project. And don't forget those 750 students :)

Next posts will continue most likely, with some discussion of labs and assessment development.