« June 2010 | Main | August 2010 »

July 16, 2010

More Attendee Reflections on CS&IT

By Hélène Martin

This blog piece is posted with the permission of Hélène Martin who posted it it first on her blog http://www.helenemartin.com/.

Yesterday was a long day well spent at Google headquarters for the Computer Science Teachers Association's annual Computer Science & Information Technology Symposium. It was a fairly modest gathering. I think there were about 200 of us (soon to be 10,000) but a lot of great folks came out and there were fantastic conversations inside and outside of sessions.

Spaf on Soup to Nuts

Gene Spafford, of security fame, kicked things off with a keynote covering interesting puzzles to get students thinking out of the box as well as ideas on how to inspire students by showing them what can be done with computer science. Examples included training soldiers with Segway-based robots and discovering security holes that make power plants vulnerable to cyber attacks. Overall, it was an interesting, engaging talk. There was a lot I recognized from Ed Lazowska's talks and materials I already use which I found comforting in some way.

Code as a Metaphor for Computational Thinking

I then went to Owen Astrachan's Code as a Metaphor for Computational Thinking session. As he opened, he said he'd let us decide whether the talk was actually about computational thinking because he wasn't sure. Interesting to hear him say that. I have a hard time with the "computational thinking" label because I haven't seen a satisfying explanation of what it is. The talk was centered on three examples that involved reasoning about existing computational artifacts, writing some related code and then analyzing that code. At one point, he said something to the effect of "if you don't write code in class, students won't know how to do it." I appreciated that and do believe that there's something very powerful about seeing a (relative) expert go through the process of writing a program, making mistakes, verifying it, using tools like IDEs appropriately, etc. I'm very suspicious of instructors who talk about code without demonstrating how to write anything.

The first example he discussed involved online gambling. He started by mentioning that it's a good place to talk about the legal code as it relates to computing. Its also a good opportunity to show some interesting code for labeling hands. He showed us a flawed example of an "isPair" function that returned true even when the hand should really be considered a triple or better. We talked through different ways of resolving this issue and lots of good design ideas came out. My only concern would be that poker tends to be a high-income, white, nerdy male sport…using this example would require careful thought on how to present it without alienating anyone. I don't really know poker and my first reaction was "yawn" though I warmed up to it once we got to the code. There really are interesting things that come up, here. One audience member suggested that the problem could be fixed by always calling the hand-testing functions in order of highest-scoring to lowest-scoring. True, but Michael Kolling of Greenfoot fame rightly pointed out that functions should work regardless of the context in which they're called. This is a good type of conversation to have with and between students. Students can then implement all the hand-scoring functions and compare their runs to expected probabilities, using those to evaluate whether their implementations are correct. That's an idea I really like.

Owen's second example involved Tin Eye, a search engine that lets you upload a picture and find instances of it regardless of size, compression, format, etc. It's interesting to speculate on how it works and to try to discover the limits of its tolerance. For example, Owen suggests that we ask students to use steganography functions to hide an unrelated image into a target image then see whether Tin Eye still recognizes the target. What if more of the target image were replaced? What if part of the image were cropped? One could do something similar with Shazam, a tool for recognizing songs. I like the "let's figure this out" feel of this example.

Finally, he discussed an example from the "code of life," finding repeated DNA substrings. This is an interesting algorithmic problem that can be discussed free from code and eventually be written as an exercise. The discovery for me was that Duke has a small set of problems with test sequences available here. I don't know what computational thinking is, but what Owen discussed were definitely examples of it.

Pre-AP Recruiting

The next session I attended, "How does your geek garden grow? Identifying and cultivating the geeks of tomorrow (AP CS Feeder Course)" left a sour taste in my mouth. The speaker argued that we need to be better at communicating with math teachers and counselors to tell them that we are in fact looking for the bored, disinterested students at the social fringe who never do their homework. The reason for this is that they may make great 'geeks,' which is the type of person the tech industry wants to hire. Maybe my thinking is clouded by the luxury of having lots of motivated, social students who want to take my courses but I really do want to target the leaders, the social butterflies, the high-achievers as much as possible. Of course, I want my courses to be inclusive of all, but I feel that targeting unmotivated students at the social fringes is a pretty desperate move and not one I think will do a lot for the image or success of K-12 Computer Science. The speaker's suggestion for getting those unmotivated students is to tell them that they'll make video games, that there will be no homework and that they'll pass if they play along.

This makes me uncomfortable but the speaker did report that this tactic has resulted in students finding something that they're good at and continuing on to be successful in her AP class. That, I think, is a real victory and something to be celebrated so I'm a little torn. It's possible that faced with low enrollment and a lack of strong students I would do the same thing.

A common theme in the talk was "let students do what they want to do so you don't lose them." The course she described seemed like everything but the kitchen sink and heavy on the tools (Visual Basic, Java, Scratch, Alice, Gamemaker) my head was spinning just thinking about it! Where I tend to opt for structured play and predictability, she really opens things up for students to experiment. It's a matter of philosophy and I wish I could go see how things play out in her classroom.

One thing I really appreciated from this talk was getting some good reminders about where teenagers are in their development while they're taking our courses. They're identity-building and striving to find areas they're successful in so we can have a very powerful effect by providing them with experiences that reinforce their sense of self.

Emmanuel Schanzer's talk on Functional Videogame Programmingwas the day's discovery and I'm glad Michelle Hutton encouraged me to see it. Emmanuel's project, Bootstrap , is a full curriculum for using Scheme to bolster algebra learning. I think I'm going to ruminate on this one and write about it later.

Digitizing The World

The last session I attended was by two teachers from CSTA's board of directors, current president Michelle Hutton and past president Robb Cutler. They presented extensions on a cool CS Unplugged activity on image representation. Michelle's middle school girls "digitized" color images using graph paper and a color key. They discussed different algorithms for choosing the color to put in one square and changing the grid size allowed them to discuss tradeoffs between storage space and fidelity. I like it. Then, they extended the exercise further by using points to digitally represent 3D objects. Robb wrote a tool to interpret simple formatted text files and display the objects or scenes so they can be interacted with. Michelle had her students represent Lego shapes and their classroom. In a blog post about the exercise, she recounted one student's inability to believe in her own success (spacial orientation exercises are generally more difficult for we ladies).

I liked their idea of giving "programming-like experiences." I'll have to see whether there's a way I can adapt the activity or something like it for my high schoolers. I was also very impressed that Robb was modifying the tool and the text file's syntax as the girls requested features. Their requests ranged from function-like syntax (reusable blocks) to naming the tool after them. Participating in this "client" way must definitely have given the girls a sense of the power of programming and I'd like to see whether I can replicate that experience somehow.

Megan Smith of Google.org

Our closing keynote was by Megan Smith, in charge of Google.org. She discussed .org initiatives including Flu Trends, RechargeIT, Clean Energy 2030, and PowerMeter and tied those nicely to generating excitement in our students about computer science. She's an excellent speaker and closed the day well. Valerie Barr, an inspirational instructor who has revamped the CS1 courses at Union College, mentioned that Google is hurting computer science by calling its employees "engineers." The same point was made to Marissa Mayer when she gave the keynote talk at SIGCSE in 2008. Megan had a good response but I now read that she's not a computer scientist at all but a mechanical engineer! The problem may be partly on the computer science side as we still haven't defined our field very well. Engineering brings to mind creativity, construction, collaboration and even I'm not sure what CS should make me think of.

Overall, a positive, inspirational day leaving me with lots of food for thought and wishing I could have spent more time with so many people I admire and enjoy speaking with.

Hélène Martin
CS&IT Attendee

Posted by cstephenson at 05:13 PM | Comments (2)

July 14, 2010

2010 CSIT Symposium

By Doug Peterson

This is a reposting of a blog piece written by Doug Peterson on his blog http://dougpete.wordpress.com/.

Yesterday, I had the honour of attending the 2010 CSIT Symposium in Sunnyvale, CA. This symposium is hosted by the CSTA (Computer Science Teachers Association) which is sponsored by Google, Microsoft Research, and the Anita Borg Institute. This is one of the events that Computer Science and Information Technology teachers need to attend. Circle it and put it on your calendar. It's an experience like no other. Often Computer Science teachers are the lonely runner in their schools so it's so invigorating to be in a room with 200 others with a similar passion for a subject discipline.

The event travels from region to region in the United States and I have been a member of the organizing committee and presented sessions from at least 2002. The memory does fail over the years but the internet and the archival process makes sure that you can always dig back to relive things. That sure bailed us out as we were trying to put things in historical perspective yesterday. We all agreed that there was one year when we offered two Symposia but were really pressed to remember when or where!

This year's event was held at the Google Headquarters in Mountain View which added a whole new level of attraction to Computer Science teachers. Excited at the prospect, we were shuttled from the hotel to the event. This was one of those things that you didn't know what to expect but I didn't expect this. I expected Silicon or at least a Valley or something. But, no, our approach took us to a very heavily forested area with very understated signs in front of the buildings. Even as I got out of the shuttle, I was wondering if we were even in the right place.

But, we were, and the very friendly folks wearing Google golf shirts escorted us to the second floor meeting room for the opening session (and breakfast). Unlike many businesses, the meeting room wasn't separate from the rest of the place. We weaved our way through couches and meeting rooms and cubicles and offices or people already working hard at whatever they were doing. You knew right away that you were in the absolute middle of everything. On the drive over, I had a discussion with a college teacher from Los Angeles who taught media and had his camera and iPhone at the ready to grab some footage for his class. I had my very best camera tucked away in my computer bag to get some evidence of my own. Both of us immediately had the sense that we'd better seek permission first and expectedly were told not to record anything in the building. That's only fair as throughout the building there were white boards with code brainstormed on them at the various informal meeting places. Of course, you could only guess as to what the content was. Perhaps it was all red herrings for interlopers?

The participants of the day were treated like royalty. At every turn, there was a Google staff member there to answer questions or guide you to where you needed to be next . This really isn't a convention centre; it's a place of work and we were just using space that was available for the day. We were truly in the heart of everything.

Armed with a coffee, the day started with a presentation about "Soup and Nuts" from Eugene Spafford. I think it's cool when your keynote is referenced by everyone by his nickname! His session dealt with thinking outside of conventional thought and really pushing your mind. Once our minds had been limbered up, we dug into some of the serious issues of the day like privacy and security. I had thought that a serious talk like that would be a downer and it might be in some other camps. For us, it was an inspiration and an affirmation of the importance of Computer Science as a discipline.

My first concurrent session was a tough choice. I wanted to know more about XNA game programming and Computer Science contests but Dana Nguyen from Google was doing a presentation on the whole concept of Google Applications for Education. I've been following this with interest and we're at Google so you can't miss the opportunity to hear about the project first hand. Her presentation was vibrant and took us into many areas of the applications that I'd known about but really hadn't experienced first hand. Of real interest was the free use of Postini within the suite of applications. I found her treatment of the myths of Google Apps particularly helpful.

Then, it was my turn to present. Where's my room? Hah! There was no room. It was a formal presentation area right on a main thoroughfare through the buildings. As I unzipped my computer bag, there was a young lady from Google there to set it up for me. Power cords are permanently stationed at the podium as well as the Mac to VGA dongle. I realized that this country boy was in the big city. I had gone and purchased my own dongle and was prepared to do things by myself. Geez! The presentation area was spectacular with a couple of overhead mounted data projects for the audience and a ceiling mounted flat screen for the presenter to see. The only little glitch was in the transition to the video. My sleeping computer with Prezi ready to go didn't play well with the settings on the data projector but that wasn't a show stopper. It was just a moment and we were good to go. Audience was about 50-60 permanently there but it was weird to have Google employees walking through the pathways with their laptops and just drop in to watch. Those that couldn't find a seat just sat on a couch across the pathway. All in all, they added about another 20 bodies by the time that I was through my presentation "Web that Works".

We ate lunch outside buffet style on picnic tables covered with some of the brightest white table cloths that I've ever seen. It was a gorgeous day with bright sun and just a perfect setting that could have lasted all afternoon but it was back for PD for me.

I attended Pat Phillips and Alfred Thompson's session on "Web Design and Development: A Key to a Growing Program" where Pat introduced us to Microsoft's Expression Studio software. It was interesting to see the group's reaction to the concept of free. Poor Pat explained over and over that Microsoft is making campus licenses available to qualifying schools. We did finally get to the nuts and bolts and got to see a bit of the software in action. This replacement for Frontpage packs a great deal of power into a single product. It's going to take some time to play around and master.

The final breakout was a real treat. Just a couple of days ago, Google had announced a new product called the App Inventor which is a visual programming environment for the Android operating system. It looks a great deal like Scratch but accesses the components of Android like the motion detector and camera. While I had signed up on the website to get access to the resource, "for this day only", if we sent a Gmail message we'd be upgraded immediately. You don't have to offer twice. I'm there and, with the rest of the group, we built a simple little Android application. What a cool concept for Computer Science. Imagine having a class set of phones that the students can program? No phones? Well, there's always the emulator!

The final session was an inspirational talk from Megan Smith that all educators, not just Computer Science teachers, needs to hear. It's a reminder that we live in a huge global community and we need to be aware of it all. Through the use of Google's data management and visualization tools, we can truly see the social issues. We also were introduced to the things that Google is doing to try and make things better world-wide. It was just wow. You couldn't help but sit there humbled and overwhelmed with all that was presented. For me, there were two issues that stood out. One was the time lapse imagery of the cutting of the rainforests. The second was a visualization of searches world-wide noting who is using Google services and who wasn't. Of particular focus was the mapping of where submerged cable exists and how entire countries are bypassed and, as such, the citizens deprived of the opportunity to be connected.

The day came to a close too quickly. There was so much there that this could easily have been a week long event. Some folks are going back for a tour of the entire Google campus this morning but my trip home precludes me from joining. It would have been a really nice way to cap the experience. In a really nice tribute move, CSTA President gave a special recognition to Lillian Israel and Chris Stephenson who are the driving forces to keep this event relevant and an important priority year after year.

Doug Peterson
CSTA Member

Posted by cstephenson at 07:21 PM | Comments (0)

July 06, 2010

CS Going Mobile?

By Dave Reed

I recently ran across some statistics from the U.S. Census Bureau that I found interesting.

By 2008, the number of text messages sent on cell phones (357 per month, on average) exceeded the number of phone calls made (204 per month, on average). For teens, the gap between texting and calling is even more pronounced, 1,742 texts vs. 231 phone calls per month, on average. If anything, the texting gap has widened in the last two years as we hear reports of teens averaging 4,000 texts a month!

Clearly, smart phones and handheld devices are becoming the pervasive computer technology for young people. My guess is that desktop computers will soon go the way of the dinosaur, and that even laptops will decrease in popularity as many people realize that a Blackberry or iPad can give them all of the connectivity they need. The question remains as to how computer science education adapts (or doesn't) to this shift. Will CS programs start to emphasize mobile computing, including the social implications of mobile technology?

Will programs continue to create courses on the development of mobile software (akin to Stanford's iPhone class)? Can understanding mobile technology be the hook that interestsmore students to take a computing course?

Any thoughts, predictions, or experiences people want to share?

Dave Reed
CSTA Board of Directors

Posted by cstephenson at 12:07 PM | Comments (1)

July 02, 2010

One of the Greatest Perks of Teaching

By Dave Burkhart

I have always thought that one of the greatest perks of teaching is being able to revise and start over again. This seems to energize me and give me a new outlook on my students and my curriculum topics. I don't think I have ever taught a class the same twice.

The teaching profession is periodic. Some teachers are able restart their jobs every year while others are able to restart every semester or quarter. What other profession is able to revise and start over periodically such as this? This to me is the excitement of teaching. Teachers work hard to create their curriculum and then continually revise as needs change and new materials become available. Teachers are able to build and perfect their work.

This summer, I have found it energizing to me to be able teach a college level class to students who hope to someday find their own teaching positions. The students in this class have reminded me about the excitement of getting your first classroom. They seem so appreciative of all the resources being shared with them. It has been so easy to build upon their excitement. We have been able to use the Internet to find free curriculum resources which will aid them in meeting the curriculum standards for their new classrooms.

Everyone had some reason for becoming a teacher. What was your motivation? What do you call your greatest perk of teaching?

Dave Burkhart
Membership Chair

Posted by cstephenson at 07:28 PM | Comments (0)