Kids Technical University Debrief
I had the pleasure and honor of spending last Saturday at Virginia State University's Kids Technical University giving a talk on Computer Sciencein the World to a fun group of kids. I am pleased to report that Yash (my virtual baby yeti pet) was largely a success, despite my initial worry that it might be too complex for the format. In the afternoon, the KTU attendees had an opportunity to play with Looking Glass, which as it always does, exposed some opportunities to continue to improve it.
The Temptation to Create New Methods
By far, the biggest barrier I saw to getting started was the temptation to create a new method rather than dragging a method call into my first method. Sadly, this can effectively be a showstopper to forward progress, especially in cases where there is no help around. Once a new method is open, the system switches to select the new tab, so even if a user figures out that they can drag and drop the method tiles in, when the user hits play nothing happens. There was one particularly nasty version of this where a user had opened the custom setup method (which all happens before the scene begins to render) and added actions to that. This seems like a fine opportunity to 1) think about whether there are ways we can make dragging more attractive than new method creation and 2) if we can't entirely prevent people from making new methods right off the bat, can we detect that state and use it as an opportunity to teach users about how to drag in new method calls.
And of course, the word method is still not useful for novices. But we've talked about that before.
Getting Started Sheet/Page
Before my workshop at St. Scholastica this summer, I spent some time creating a one page flyer that showed how to get started opening a challenge, creating a program, remixing, and sharing. For the teachers, this really didn't work - it wasn't detailed and comprehensive enough to answer all of the questions. But I shared it with the fine VSU folks and they made copies for all the KTU attendees. I did see a number of kids looking at it to get a hint about where to go. So this may be something we want to share further, or perhaps a model for a getting started page. I can even imagine links to our videos on that page. One potentially nice attribute of that approach might be that it provides information at multiple levels - the one pager really just has hints about where to go and what to do; the videos can then provide more details for users that want them.
Refresh Can Spin Forever
Because of the different orders in which aspects of the interface get created an initialized, the download and refresh of the available challenges can spin forever in some cases. I think I have now fixed this, but it was actually a significant issue in that while I know that asking it to refresh again gets the results, most of the kids who saw the spinner just thought it was taking forever. I'm taking this as more evidence that we really do need to just solidify the connection between the IDE and the community and make sure it's always seamless and resilient.
One of the curses that comes with the Looking Glass Community is that content has the potential need to basically live forever. We've already seen cases where the underlying system will change - file formatting, api changes, model changes, etc. Several of the challenges that kids opened had version change issues - largely that the scale of objects changed, in this instance. We've known this was coming, but the need to be able to update versions and potentially to ensure that challenges that are no longer good first experiences disappear from the choices that come up by default, especially through the IDE.