Wednesday, July 1, 2009

A Student’s First Alice Creation

I introduced Alice to my College for Kids classes yesterday, and one student quickly made this little “story.” (Higher quality version of the video)

video

Students had a lot of fun with the Alice 3 beta, making their own characters and scripting them to use the new Sims 2 animations. Others used Alice 2.2 for more reliability.

Friday, June 26, 2009

Guest post on Scratch at East Bay Daze

I wrote a guest post on kids programming with Scratch for a community blog, East Bay Daze.

Monday, June 8, 2009

Software Ready for Summer Teaching

I just got back from Diablo Valley College, where I have taught in the summer College for Kids program for grades 4–9 since 1992. I was there installing the software (all free) we’ll use this summer:

Programming Languages
Python
Pygame
xturtle

Kids’ Programming Environments
Scratch
Alice 2.2
Alice 3.0 beta

Graphics Software
GIMP
Inkscape
Google SketchUp

We use the graphics software to create images for our Scratch and Pygame programs. GIMP is good for raster drawings, and Inkscape and SketchUp are good for 2d and 3d vector drawings from which we render raster images.

Wednesday, June 3, 2009

Alice Team at JavaOne; 3.0 Beta Released

As many of you know, I’ve been teaching with Alice for a couple of years. It’s a fun 3D environment that can lead young people into programming with real languages. The whole Alice team from Carnegie Mellon University are here at JavaOne, and they released a beta of the long-awaited Alice 3.0 to coincide with this conference. They have a booth on the Pavillion (show floor), and I chatted with some of them there. Yesterday they had a Birds-of-a-Feather session at 9:30 PM, which, despite the late hour, was well attended. They showed a demo of some of the new features, especially the new Sims 2 characters and animations, and then we had questions from the floor.

One nice feature is integration with the NetBeans integrated development environment, so the Java code representing a world built with Alice can be extracted and worked on with NetBeans or any IDE or editor. There is no source code for the Sims characters. They are accessed entirely through the Java Native Interface (JNI).

Congratulations, Alice team!

Friday, May 29, 2009

Google I/O 2009

As I did last year, I got a lot out of Google I/O this year. My main objectives were to network, meet potential clients, and to learn more about Android. I did some of that, and had a good time as well.

On Wednesday, I learned from Dan Morrill’s talk that I can create Android apps using HTML, Java, and even native C. Then I picked up my free Android phone—thanks, Google!—and set it up. Then I went to two Friend Connect talks, and during one I set up Friend Connect on TalkingPuffin.org. I tweeted that I had done this and several people joined the page. I visited the Android Fireside Chat for a little while, where members of the Android team answered questions from people standing at microphones and via Google Moderator.

On Thursday I learned about creating real-time games on Android. It’s very important to minimize garbage collection, because it can cause unacceptable delays. Java method calls are expensive too, apparently. Especially when made through interfaces, Chris Pruett told us (though I am skeptical, or curious why that would be). Chris will be publishing the game he showed us, with source code. Next in the same room was a talk on programming Google Wave, which was interesting. After that I saw an excellent talk by the bright and outspoken Romain Guy, who we often hear about on the Java Posse. Even though I am just learning about Android development, I listened careful and took lots of notes. During the next session, Android Lightning Talks, I saw several interesting products demonstrated (including a Horoscope app which I booed good-naturedly), and I played around in Eclipse and IDEA with writing simple Android apps.

Google really knows how to run an event. Everything I saw went smoothly. The meals were excellent. They had snacks and coffee. The party Wednesday night was amazing, with all sorts of food, drinks and desserts, game machines, Maker Faire exhibits, and music (which was a bit loud for conversation). Missile Command and Galaga were great fun.

Tuesday, May 26, 2009

140 | The Twitter Conference 2009

Today I attended the first day of 140 | The Twitter Conference 2009. Unlike Alex Payne, I was not able to get to Mountain View early in the morning, so I missed his keynote. I did get to chat with him a bit later though.

I sat at a table with Doug Bowman, Twitter’s creative director. Doug came from Google, as you may know, after blogging about his departure after finding his creative ideas not a good fit for Google’s rigid structure. I told Doug about my renewed interest in learning to draw and express my ideas graphically, and we had a nice chat and he was very encouraging. He thought my choice to use some Omni Group programs like Outliner and Graffle was a good one. He gave me some good ideas on seeing a scene by photographing it and then pixelating or blurring it so that all that remains is patterns of color and light.

I’ve been to the Computer History Museum large meeting room many times before, but the people were always arranged in rows of chairs. Here people sat around large round tables, with their heads in laptops. Even during presentations, I found most heads down most of the time. That struck me as odd. I suppose people were twittering or something.

I enjoyed the morning talks, and did a bit of twittering myself.

In the afternoon I went to three developer presentations. The first was an introduction to the Twitter API by Doug Williams, Twitter’s new developer support guy. Doug is doing a really good job in his new role, and he impressed me in his talk with how well he knows and can speak about the Twitter API and surrounding issues.

The next talk was a panel consisting of Twitter developers from Sun, CoTweet, and Seesmic. I was pleased that when I asked, they all three said they are interested in Scala (so pleased that I immediately twittered this).

Last was a a series of new product launch lightning talks. Being near to launching a product myself (TalkingPuffin), I was happy for these guys. One I found especially interesting was Twittfilter. The developer has created some very sophisticated ways to filter tweets: scoring on various dimensions and programmatically-creating tags, for example.

After the day at the museum was done I went across the street to the large back patio of a sports bar where a hundred or more of our people gathered. I found some developers and others to chat with for a couple hours before driving home.

Thanks, 140 | The Twitter Conference. You ran a good event. I won’t be coming back tomorrow because I’ll be at Google I/O.

Thursday, May 21, 2009

Silicon Valley Code Camp 2009: My Presentations

In 2008 I gave a talk at Silicon Valley Code Camp on teaching programming to kids. This year I will offer that class and two others:
  • Game and Story Programming Class for Kids is a hands-on session where students in grades 4–12 bring a laptop with Scratch installed, and I teach them how to use it to create games, stories, music, art, simulations, and the like.
  • TalkingPuffin: a Scala Twitter Client is a walk through of the Scala source code of the open source Twitter client TalkingPuffin.